java程序员面试题_第1页
java程序员面试题_第2页
java程序员面试题_第3页
java程序员面试题_第4页
java程序员面试题_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

java程序员面试题第一,说说final,finally,finalize的差别。第二,AnonymousInnerClass(匿名内部类)能否可以e某tends(继承)其余类,能否可以implements(实现)interface(接口)?第三,StaticNestedClass和InnerClass的不同样,说得越多越好(面试题有的很抽象)。第四,&和&&的差别。第五,HashMap和Hashtable的差别。第六,Collection和Collections的差别。第七,什么时候用assert.第八,GC是什么?为何要有GC?第九,Strings=newString("某yz");创立了几个StringObject?第十,Math.round(11.5)等於多少?Math.round(-11.5)等於多少?第十一,shorts1=1;s1=s1+1;有什么错?shorts1=1;s1+=1;有什么错?第十二,sleep()和wait()有什么差别?第十三,Java有没有goto?第十四,数组有没有length()这个方法?String有没有length()这个方法?第十五,Overload和Override的差别。Overloaded的方法能否可以改变返回值的种类?答案:第一,说说final,finally,finalize的差别。final?修饰符(重点字)假如一个类被申明为final,意味着它不可以再派生出新的子类,不可以作为父类被继承。所以一个类不可以既被申明为abstract的,又被申明为final的。将变量或方法申明为final,可以保证它们在使用中不被改变。被申明为final的变量一定在申明时给定初值,而在此后的引用中只好读取,不行改正。被申明为final的方法也相同只好使用,不可以重载第1页共5页finally?再异样办理时供给finally块来履行任何除掉操作。假如抛出一个异常,那么相般配的catch子句就会履行,此后控制就会进入finally块(假如有的话)。finalize?方法名。Java技术同意使用finalize()方法在垃圾采集器将对象从内存中除掉出去以前做必需的清理工作。这个方法是由垃圾采集器在确立这个对象没有被引用时对这个对象调用的。它是在Object类中定义的,所以全部的类都继承了它。子类覆盖finalize()方法以整理系统资源或许履行其他清理工作。finalize()方法是在垃圾采集器删除对象以前对这个对象调用的。第二,AnonymousInnerClass(匿名内部类)能否可以e某tends(继承)其余类,能否可以implements(实现)interface(接口)?匿名的内部类是没出名字的内部类。不可以e某tends(继承)其余类,但一个内部类可以作为一个接口,由另一个内部类实现。第三,StaticNestedClass和InnerClass的不同样,说得越多越好(面试题有的很抽象)。NestedClass(一般是C++的说法),InnerClass(一般是JAVA的说法)。Java内部类与C++嵌套类最大的不同样就在于能否有指向外面的引用上。详细可见http:注:静态内部类(InnerClass)意味着1创立一个static内部类的对象,不需要一个外面类对象,2不可以从一个static内部类的一个对象接见一个外面类对象第四,&和&&的差别。是位运算符。&&是布尔逻辑运算符。第五,HashMap和Hashtable的差别。都属于Map接口的类,实现了将唯一键照射到特定的值上。HashMap类没有分类或许排序。它同意一个null键和多个null值。Hashtable近似于HashMap,可是不同样意null键和null值。它也比第2页共5页HashMap慢,由于它是同步的。第六,Collection和Collections的差别。Collections是个java.util下的类,它包括有各样相关会合操作的静态方法。Collection是个java.util下的接口,它是各样会合构造的父接口。第七,什么时候用assert。断言是一个包括布尔表达式的语句,在履行这个语句时假设该表达式为true。假如表达式计算为false,那么系统会报告一个AssertionError。它用于调试目的:assert(a>0);//throwsanAssertionErrorifa<=0断言可以有两种形式:assertE某pression1;assertE某pression1:E某pression2;某pression1应当老是产生一个布尔值。某pression2可以是得出一个值的随意表达式。这个值用于生成显示更多调试信息的String信息。断言在默认状况下是禁用的。要在编译时启用断言,需要使用source1.4标志:javac-source1.4Test.java要在运转时启用断言,可使用-enableassertions或许-ea标志。要在运转时选择禁用断言,可使用-da或许-disableassertions标志。要系统类中启用断言,可使用-esa或许-dsa标志。还可以在包的基础上启用或许禁用断言。可以在估计正常状况下不会抵达的任何地点上放置断言。断言可以用于验证传达给私有方法的'参数。可是,断言不应当用于考证传达给公有方法的参数,由于不论能否启用了断言,公有方法都一定检查其参数。可是,既可以在公有方法中,也可以在非公有方法中利用断言测试后置条件。其他,断言不该该以任何方式改变程序的状态。第3页共5页第八,GC是什么?为何要有GC?(基础)。GC是垃圾采集器。Java程序员不用担忧内存管理,由于垃圾采集器会自动进行管理。要恳求垃圾采集,可以调用下边的方法之一:System.gc()Runtime.getRuntime().gc()第九,Strings=newString("某yz");创立了几个StringObject?两个对象,一个是“某y某”,一个是指向“某y某”的引用对象s。第十,Math.round(11.5)等於多少?Math.round(-11.5)等於多少?Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11;第十一,shorts1=1;s1=s1+1;有什么错?shorts1=1;s1+=1;有什么错?shorts1=1;s1=s1+1;有错,s1是short型,s1+1是int型,不可以显式转变为short型。可改正为s1=(short)(s1+1)。shorts1=1;s1+=1正确。第十二,sleep()和wait()有什么差别?搞线程的最爱sleep()方法是使线程停止一段时间的方法。在sleep时间间隔期满后,线程不必定立刻恢复履行。这是由于在那个时辰,其余线程可能正在运转并且没有被调动为放弃履行,除非(a)“醒来”的线程拥有更高的优先级,(b)正在运转的线程由于其余原由此拥塞。wait()是线程交互时,假如线程对一个同步对象某发出一个wait()调用,该线程会暂停履行,被调对象进入等待状态,直到被唤醒或等待时间到。第十三,Java有没有goto?Goto?java中的保存字,现在没有在java中使用。第十四,数组有没有length()这个方法?String有没有length()这个方法?数组没有length()这个方法,有length的属性。String有有length()这个方法。第十五,Overload和Override的差别。Overloaded的方法能否可以改变第4页共5页返回值的种类?方法的重写Overriding和重载Overloading是Java多态性的不同样表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。假如在子类中定义某方法与

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论