亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

數碼視訊校園招聘JAVA筆試題及答案

時間:2020-11-24 17:33:10 筆試題目 我要投稿

數碼視訊2015校園招聘JAVA筆試題及答案

  一、選擇題(每題5分,共20分)

  1、訪問修飾符作用范圍由大到小是(D)

  A、 private-default-protected-public

  B、 public -default-protected- private

  C、 private- protected-default- public

  D、public - protected- default-private

  2、以下(D)不是Object類的方法?

  A、clone()

  B、finalsize()

  C、toString()

  D、hasNext()

  3.Java中,以下(B)接口以鍵——值對的方式存儲對象?

  A、java.util.Collection

  B、java.util.Map

  C、java.util.List

  D、java.util.Set

  4、指出下列程序運行的結果()

  Public class Example{

  String str=new String(“good”);

  char[] ch={‘a’,’b’,’c’ };

  public static void main(String args[]){

  Exampleex=new Example();

  Ex.change(ex.str,ex.ch);

  System.out.print(ex.str+”and ”);

  System.out.print(ex.ch);

  }

  public void change(String str,char ch[]){

  str=”test ok”;

  ch[0]=’g’;

  }

  A、good and abc

  B、good and gbc

  C、test ok and abc

  D、test ok and gbc

  二、填空題(每題5分,共20分)

  5、JAVA基本數據類型包括__字符類型char,布爾類型boolean,數值類型____.

  6、Math.round(11.5)等于多少?12,Math.round(-11.5)等于多少?-11

  7、程序String str1="hello";String str2="he"+newString("llo");

  System.out.println(str1==str2);的運行結果是:false

  8、字符串分為兩大類,一類是字符串常量,使用String類的對象表示;另一類是字符串變量,使用StringBuffer類的對象表示。

  三 簡答

  9. 接口和抽象類的區(qū)別是什么?(10分)

  答案:接口是公開的,里面不能有私有的'方法或變量,是用于讓別人使用的,而抽象類是可以有私有方法或私有變量的,

  另外,實現接口的一定要實現接口里定義的所有方法,而實現抽象類可以有選擇地重寫需要用到的方法,一般的應用里,最頂級的是接口,然后是抽象類實現接口,最后才到具體類實現。

  還有,接口可以實現多重繼承,而一個類只能繼承一個超類,但可以通過繼承多個接口實現多重繼承,接口還有標識(里面沒有任何方法,如Remote接口)和數據共享(里面的變量全是常量)的作用.

  10. 利用遞歸方法求5!

  答案:

  public class Test {

  public static void main(String args[]) {

  int x = 5;

  int rs = Fac(x);

  System.out.println("" + x + "! = " + rs);

  }

  public static long Fac(int x) {

  if(x > 1)

  return (x * Fac(x - 1));

  else

  return 1;

  }

  }

  11. 編寫多線程代碼有幾種實現方法?請用一段代碼分別舉例實現。

  答案:

  三種:

  (1)繼承Thread類,重寫run函數

  創(chuàng)建:

  classxx extends Thread{

  public void run(){

  Thread.sleep(1000) //線程休眠1000毫秒,sleep使線程進入Block狀態(tài),并釋放資源

  }}

  開啟線程:

  對象.start() //啟動線程,run函數運行

  (2)實現Runnable接口,重寫run函數

  開啟線程:

  Threadt = new Thread(對象) //創(chuàng)建線程對象

  t.start()

  (3)實現Callable接口,重寫call函數

  Callable是類似于Runnable的接口,實現Callable接口的類和實現Runnable的類都是可被其它線程執(zhí)行的任務。

  Callable和Runnable有幾點不同:

 、貱allable規(guī)定的方法是call(),而Runnable規(guī)定的方法是run().

 、贑allable的任務執(zhí)行后可返回值,而Runnable的任務是不能返回值的

 、踓all()方法可拋出異常,而run()方法是不能拋出異常的。

 、苓\行Callable任務可拿到一個Future對象,Future表示異步計算的結果。它提供了檢查計算是否完成的方法,以等

  待計算的完成,并檢索計算的結果.通過Future對象可了解任務執(zhí)行情況,可取消任務的執(zhí)行,還可獲取任務執(zhí)行的結果

  12. 編程題:寫一個觀察者模式出來(先畫類圖,在用代碼實現)

  答案:

    /// <summary>
 
    ///抽象主題類
 
    /// </summary>
 
    public abstract class Subject
 
    {
 
        private IList<Observer> observers = new List<Observer>();
 
        /// <summary>
 
        ///增加觀察者
 
        /// </summary>
 
        /// <param name="observer"></param>
 
        public void Attach(Observer observer)
 
        {
 
            observers.Add(observer);
 
        }
 
        /// <summary>
 
        ///移除觀察者
 
        /// </summary>
 
        /// <param name="observer"></param>
 
        public void Detach(Observer observer)
 
        {
 
            observers.Remove(observer);
 
        }
 
        /// <summary>
 
        ///向觀察者(們)發(fā)出通知
 
        /// </summary>
 
        public void Notify()
 
        {
 
            foreach (Observer o in observers)
 
            {
 
                o.Update();
 
            }
 
        }
 
    }
 
    /// <summary>
 
    ///抽象觀察者類,為所有具體觀察者定義一個接口,在得到通知時更新自己
 
    /// </summary>
 
    public abstract class Observer
 
    {
 
        public abstract void Update();
 
    }
    /// <summary>
 
    ///具體觀察者或具體通知者,將有關狀態(tài)存入具體觀察者對象;在具體主題的內部狀態(tài)改變時,給所有登記過的觀察者發(fā)出通知。具體主題角色通常用一個具體子類實現。
 
    /// </summary>
 
    public class ConcreteSubject : Subject
 
    {
 
        private string subjectState;
 
        /// <summary>
 
        ///具體觀察者的狀態(tài)
 
        /// </summary>
 
        public string SubjectState
 
        {
 
            get { return subjectState; }
 
            set { subjectState = value; }
 
        }
 
    }
 
    /// <summary>
 
    ///具體觀察者,實現抽象觀察者角色所要求的更新接口,已是本身狀態(tài)與主題狀態(tài)相協調
 
    /// </summary>
 
    public class ConcreteObserver : Observer
 
    {
 
        private string observerState;
 
        private string name;
 
        private ConcreteSubject subject;
 
        /// <summary>
 
        ///具體觀察者用一個具體主題來實現
 
        /// </summary>
 
        public ConcreteSubject Subject
 
        {
 
            get { return subject; }
 
            set { subject = value; }
 
        }
 
        public ConcreteObserver(ConcreteSubject subject, string name)
 
        {
            this.subject = subject;
 
            this.name = name;
 
        }
 
        /// <summary>
 
        ///實現抽象觀察者中的更新操作
 
        /// </summary>
 
        public override void Update()
 
        {
 
            observerState = subject.SubjectState;
 
            Console.WriteLine("The observer's state of {0} is {1}", name, observerState);
 
        }
 
    }

【數碼視訊2015校園招聘JAVA筆試題及答案】相關文章:

java試題及答案08-12

JAVA模擬試題及答案11-14

2017年Java試題及答案08-27

java基礎筆試題及答案08-07

Java基礎筆試題及答案10-15

Java招聘筆試題目12-07

java認證考試試題及答案09-10

最新java面試題及答案08-20

java面試題2017及答案08-16

Java面試題大全及答案08-16