Java常见⾯试题(⼋股⽂)
1.jdk和jre的区别?
jdk,Java开发⼯具包,为Java提供开发环境和运⾏环境。
jre,java的开发环境,为java的运⾏提供环境⽀持
总的来说jdk包含jre,还包含编译Java源码的编辑器javac,还包含Java的解析和调试⼯具,如果你只需运⾏Java程序,你只需要安装jre,如果你要编写Java程序就需要安装jdk。
2.Java中是不是没有全局变量?
Java中并没有真正的定义全局变量,Java程序是有很多的类和⽅法组合成的,每个类和⽅法中的变量都是⾃⼰的全局变量,但是相当于其他的类和⽅法来说就是局部变量。
3.==和equals的区别?
==对于基本数据类型来说是值的⽐较,对于引⽤数据来说是引⽤地址的⽐较,equals默认情况下是引⽤地址的⽐较,但是很多类重写了equals⽅法把它变成了值的⽐较,例如string,integer把它变成了值的⽐较。
4.重写和重载的区别?
重载
equals不等于
发⽣在同⼀个类中
⽅法名相同
参数列表不相同
与返回值⽆关,如果只是返回值不相同不能说是重载
重写
发⽣在⼦类和⽗类中
⽅法名相同
参数列表相同
返回值相同或是其⼦类
权限修饰符相同或⼦类⼤于⽗类权限修饰符
异常类型相同或⼦类⼩于⽗类的异常
5.两个值的hashCode()相同,则equals()⼀定为true,对吗?
不对,两个值的hashCode()相同,equals()不⼀定为true,例如string的通话和重地两个值的hashCode()相同,但equals()却为false,因为在散列列表中,hashCode()相同的两个键值对的哈希值相同,但是哈希值相同键值对不⼀定相同。
6.final在Java中的作⽤?
final修饰的类不能被继承
final修饰的⽅法不能被重写
final修饰的变量叫常量,常量必须初始化,初始换后的值不能被修改
7.在Java中math .round(-1.5)等于多少?
等于-1,und四舍五⼊⼤于0.5向上取整
8.string属于基本数据类吗?
string不属于基本数据类型,基本数据类型有8中byte,short,int,long,float,double,char,boolean,四种数据类型:整数 byte(1个字节)short(2个字节) int (4个字节)long(8个字节)
浮点 float(4个字节) double(8个字节)
字符 char(2个字节)
布尔类型 Boolean (1个字节)
9.string如何转变成基本数据类型?
⼀般情况我们使⽤parse例如Integer.parseInt或者使⽤Apache lang NumberUtils⼯具类
10.char变量能存汉字吗?
可以,不过如果某个汉字没有被包含在unicode编码集中,那么char不能存储这个汉字,char在Java中是占2个字节所以可以存储中⽂。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。