JAVA程序员面试题.doc

JAVA程序员面试题.doc

ID:51819936

大小:48.45 KB

页数:7页

时间:2020-03-16

JAVA程序员面试题.doc_第1页
JAVA程序员面试题.doc_第2页
JAVA程序员面试题.doc_第3页
JAVA程序员面试题.doc_第4页
JAVA程序员面试题.doc_第5页
资源描述:

《JAVA程序员面试题.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、JAVA程序员面试题(3)2008-06-1210:421.abstractclass和interface有什么区别?声明方法的存在而不去实现它的类被叫做抽象类(abstractclass),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。接口(interface)

2、是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义staticfinal成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof运算符可以用来决定某对象的类是否实现了接口。2.当一个线程进入一个对象的一个synchronized方法后,其

3、它线程是否可进入此对象的其它方法?不能,一个对象的一个synchronized方法只能由一个线程访问。这就避免了数据改变,运用多线程技术都会用到synchronized方法,防治由于多线程带来的数据改变1.编程题:用最有效率的方法算出2乘以8等於几?publicclassCount{publicstaticvoidmain(Stringargs[]){inti=2<<3;System.out.println("2乘以8等于"+i);}}因为计算机是二进制的。所以你用位运算是最快的是最小效率的,其实一个程序效不效率,应该看他的时间复杂度O(time)。如果你用2×8他的时间复杂度是O(N),而

4、2<<3他的时间复杂度是O(logN).这样你就可以知道他们运行的快慢了。2.两个对象值相同(x.equals(y)==true),但却可有不同的hashcode,这句话对不对?不对,有相同的hashcode。3.当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?是值传递。Java编程语言只由值传递参数。当一个对象实例作为一个参数被传递到方法中时,参数的值就是对该对象的引用。对象的内容可以在被调用的方法中改变,但对象的引用是永远不会改变的。4.编程题:写一个Singleton出来。Singleton模式主要作用是保证在J

5、ava应用程序中,一个类Class只有一个实例存在。一般Singleton模式通常有几种种形式:第一种形式:定义一个类,它的构造函数为private的,它有一个static的private的该类变量,在类初始化时实例话,通过一个public的getInstance方法获取对它的引用,继而调用其中的方法。publicclassSingleton{  privateSingleton(){}  //在自己内部定义自己一个实例,是不是很奇怪?  //注意这是private只供内部调用  privatestaticSingletoninstance=newSingleton();  //这里提供了一

6、个供外部访问本class的静态方法,可以直接访问    publicstaticSingletongetInstance(){    returninstance;    }}第二种形式:publicclassSingleton{  privatestaticSingletoninstance=null;  publicstaticsynchronizedSingletongetInstance(){  //这个方法比上面有所改进,不用每次都进行生成对象,只是第一次      //使用时生成实例,提高了效率!  if(instance==null)    instance=newSingle

7、ton();returninstance;  }}其他形式:定义一个类,它的构造函数为private的,所有方法为static的。一般认为第一种形式要更加安全些1.说出ArrayList,Vector,LinkedList的存储性能和特性ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。