更新时间:2020-03-28 13:16:17 来源:极悦 浏览1983次
1.空字符串的作用
如题所示,当进行s=s+i的时候,s在前和s在后输出的结果是相反的。空字符串在前时是正着输出,空字符串在后是逆着输出
2.shorts1=1;s1=s1+1;有什么错?shorts1=1;s1+=1;有什么错?
第一种情况,s1是short类型,在计算s1=s1+1时,前边是short型,后边是int型,不能自动转换。由于没有强转,要报类型错误。
第二种情况,使用了+=这个java自带的运算符,java内部会对其进行处理,所以编译通过,不会报错。
3.说说&和&&的区别。
&和&&都表示与的意思,既表达式俩边都成立,结果才成立。
&&是逻辑运算符,&&有短路作用,既当表达式左边为假时,不需要计算右边,整个的结果直接为假;&没有
&是位运算符,&的左右俩边可以是布尔类型,也可以是数值;&&俩边只能是布尔类型
4.Integer与int的区别
int是八大基本数据类型之一,Integer是int的封装类。
int的默认值是0,Integer的默认值是null,此时的0代表这个数赋值0,而null代表没接收到这个值
Integer提供了与整数相关的操作,int没有
5.==与equals的区别
从表面上看,对于基本数据类型==是判断的值是否相等;对于引用数据类型是判断是否为同一个对象
从本质上看,是看是否为一个引用地址
equals是判断值是否相等
6.override(重写)和overload(重载)的区别
重载是在一个类中,方法名相同,参数列表不同(参数类型和参数个数)的一种现象
1.重载与返回值类型无关
2.不能通过访问修饰符进行重载
如下是重载:
重写是在父子类中,子类重写父类的方法,要求方法名与参数列表,返回值类型完全相同。子类重写父类规范要在子类的方法前加注解@Override
1.重写的返回值类型可以改,但只能是父子类
例如:
2.重写的访问修饰符得大于等于原来的
3.不能重写私有方法
4.参数列表的顺序与类型必须一样,变量名可不同
7.接口与抽象类的区别
抽象类是用abstract修饰的类,抽象类不能new对象。
接口是比抽象类还抽象的“类”
普通类:具体实现
抽象类:规范(抽象方法),具体实现
接口:规范(抽象方法)
区别:
1.抽象类中可以有抽象方法也可以有非抽象方法,接口中只能有抽象方法
2.抽象类中可以有成员变量,接口中只能有常量,用publicstaticfinal修饰,默认可不写
3.抽象类有构造方法,接口没有构造方法
4.抽象类中的方法的访问修饰符可以是public,protected,默认;接口中方法的访问修饰符只能是public,并且默认值是publicabstract
5.抽象类中可以有静态方法,接口中不能有静态方法。(static是类名直接调用,abstract是子类实现创建对象调用,如果一起修饰,自相矛盾了)
6.一个类可以实现多个接口,只能继承一个抽象类
8.JDK,JRE,JVM的联系与区别
JDK是java开发工具包,JDK包括JRE,类库,java工具
JRE是java运行环境,JRE包括JVM,JRE里有运行.class的java.exe
JVM是java虚拟机,java虚拟机在执行字节码时,把字节码解释成具体平台的机器指令执行,这也是java语言跨平台的根源,是“一次编译,到处运行”的原因
联系:JDK下的jre文件夹下有俩个文件夹lib和bin;在这里可以理解为bin就是jvm,lib就是类库;所以JRE=JVM+类库
我们利用JDK开发属于自己的java程序,javac编译成字节码,在JRE上运行这些字节码,JVM解析这些字节码,最终映射到CPU指令集或OS的系统调用
区别:
JDK与JRE的区别:
1.JDK有javac.exe;JRE没有
2.JDK是开发环境,JRE是运行环境
JRE与JVM的区别:
1.JVM执行.class需要JRE下lib类库的支持(尤其是rt.jar)
9.Strings=newString("xyz");创建了几个StringObject
创建了俩个对象或一个对象,如果常量池中没有“xyz”第一次=在常量池中创建了一个字符串对象,第二次new又创建了一个字符串引用对象;如果常量池中有“xyz”,那就只是new的时候创建了一个对象。
10.Java有没有goto?
java中的保留字,现在在java中没有使用
以上就是极悦java培训机构的小编针对“互联网Java面试题基础”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习