java基础面试题

java基础面试题

ID:20428556

大小:133.74 KB

页数:19页

时间:2018-10-09

java基础面试题_第1页
java基础面试题_第2页
java基础面试题_第3页
java基础面试题_第4页
java基础面试题_第5页
资源描述:

《java基础面试题》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、—、JDK与JRE有什么区别?答:®JDK:Java开发工具包,包括Java开发工具和JRE。②JRE:Java运行环境,包括运行Java程序所需的核心类库和JVM。③JVM:Java虚拟机,保证Java程序的跨平台性。总结:由JDK开发的Java程序,交给JRE来运行,并由JVM来保证Java程序的跨平台性。二、byteb=(byte)130;的运行结果是?①130的原码:00000000000000000000000010000010②130的反码:00000000000000000000000010000010③130的补码:

2、00000000000000000000000010000010④一个字节截取的补码为10000010⑤补码10000010的反码为10000001⑥反码10000001的原码为11111110,计算结果为-126三、判断下面代码第三行和第四行编译会出现问题吗?bytebl=3;byteb2=4;byteb3=bl+b2;byteb4=3+4;①第三行会出现问题。如果是变量相加,首先会自动提升数据类型,然后再运算。②第四行编译运行通过。如果是常量相加,会直接计算,然后看运算的结果是否在其数据类型所能描述的范围内、判断下列代码的第二行

3、和第三行编译是否能通过?并说明理由shorts=5;s=s+2;//报错,变量s参与运算,会自动提升数据类型至ints+=2;//编译通过。s+=2隐含了强制类型转换,相当于s=(short)(s+2);五、请用高效的形式写出:2*82<<3六、如何交换两个变量?①用第三方变量来做(开发做)inttemp=a;a=b;b=temp;②用按位异或来做(面试做)按位异或的特性:一个数据对另一个数据异或两次,又变回原本的值。a=aAb;b=aAb;a=aAb;①用算术运算符a=a+b;b=a-b;a=a-b;七、写出下面程序的运行结果cl

4、assFu//靈tsstatic{system.out.printlncFU鄕eHfts^:);}//隱窪>l±{system.outprintlncFU^BftaM--);}public?():lassZi•入、system.out.printlncFU甚蹄^w=);extendsFu/L箔static•瓠、system.outprintln(Ni®^^ffiM:);"构造代码块{System.out.println("zi构造代码块");}publicZi(){System.out.printlnC'zi构造方法");}}cla

5、ssBlockCodeDemo2{publicstaticvoidmain(String[]args){Ziz=newZi();Ziz2二newZi();}}如果子父类中都有静态代码块,构造代码块,构造方法,那么执行顺序为?父类的静态代码块-->子类的静态代码块-->父类的构造代码块-->父类的构造方法-->子类的构造代码块-->子类的构造方法注意:静态代码块只加载一次(.class字节码文件只加载一次的情况下)Fu静态代码块zi静态代码块Fu构造代码块Fu构造方法zi构造代码块zi构造方法Fu构造代码块Fu构造方法zi构造代码块z

6、i构造方法八、方法重载和方法重写有什么区别?①方法重载:同一个类中,出现方法名相同、参数列表不同的两个或多个方法时,即构成方法重载。②方法重写:子父类间,出现一模一样的方法时,被称为方法的重写,或者复写、覆盖。也就是要求返回值类型、方法名、参数列表都一致,dayl2九、如何理解字符串一旦初始化就不可以被改变。Strings="hello";s+="world";System.out.println(s);解释:字符串一旦被初始化就不能被改变,说的不可以改变的是hello这个字符串在常量池中的值不可以被改变,而非s这个引用不能改变十、

7、si、s2有区别吗?Stringsi=newString("abcH);在Sting常量池Strings2="abc";答:第一种方式:在内存中存在两个对象,一个在堆内存中中;第二种方式:在内存中只有一个对象,在String常量池中,i■—、length和length()这两个关键字的区别?答:①它们都不是关键字②length是属性,用来获取数组的长度③length()是个方法,用来获取字符串的长度十二、1.publicstaticvoidmain(String[]args){Strings="abc";change(s);Syst

8、em.out.println(s);}publicstaticvoidchange(Strings){s+="hello";把"abc"在String常量池的地址值传递进去,change方法里的s对象指向了"abc",然后和"hell

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

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

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