java基础面试题

1.JDK 和 JRE 有什么区别?

1.JDK全称为,jre全称为,前者是开发和运行环境,后者是运行,表示你如果只运行程序,那么只靠jre就能完成,

2.== 和 equals 的区别是什么?

==是运算符,equals是属于object类的方法。
对于基本类型,==是比较两个值的是否相同,equals是比较地址是否相同。
对于对象,==比较地址是否相同,equals也是比较地址是否相同,但是有些类会将equals重写,比如String,Intger.

3.两个对象的 hashCode()相同,则 equals()也一定为 true,对吗?

不一定,理由如下?

4.final 在 java 中有什么作用?

final修饰的类不可被继承,
如果修饰是变量,那么将视为常量

5.java 中的 Math.round(-1.5) 等于多少?

-2,取坐标左边的第一个整数。

6.String 属于基础的数据类型吗?

不属于基本的数据类型,基本数据类型共有8个,char ,short,int,long,boolean,
double,float。

7.java 中操作字符串都有哪些类?它们之间有什么区别?

???

8.String str="i"与 String str=new String(“i”)一样吗?

不一样,前者只新建了一次,后者两次

9.如何将字符串反转?

将String变为Stringbuffer,stringbuild,调用其中的reserve()方法后。调用toString,就行了

10.String 类的常用方法都有那些?

charAt()返回参数出现的位置
Split(),根据参数将字符串进行分离,返回一个字符串数组。

11.抽象类必须要有抽象方法吗?

不一定可以没有

12.普通类和抽象类有哪些区别?

有没有抽象方法

13.抽象类能使用 final 修饰吗?

不能,因为抽象必须要靠其他继承才能实例话化,如果加上final,将不能被继承

14.接口和抽象类有什么区别?

接口中,就规范,方法只是定义,没有实现,抽象类可以有实现的方法和没有实现的方法。两者实例化的机制也不太相同,接口通过类实现接口,一个类可以实现多个接口,抽象类靠类继承来实现实例化,一个类只能继承一个类。

15.java 中 IO 流分为几种?

输入输出流
字节,字码流

16.BIO、NIO、AIO 有什么区别?

有关Io操作的关系,
首先
我们来理解一下同步异步,阻塞与非阻塞。
同步与异步的区别就是,同步会在提请求的时候,将结果一起返回,异步则是在接到请求的时候,返回信息,告知已经接到请求,但结果却没有在同时返回,会在后面用特殊方法通知。
阻塞与非阻塞,阻塞就是会一直等待当前结果,在结果没有出来之前一直进行挂起,不会去做其他事情,非阻塞,就是在等结果的时候,去干其他事情了。
AIO 异步非阻塞
BIO 同步阻塞
NIO 同步非阻塞

17.Files的常用方法都有哪些?

file.exist() 文件是否存在 。
files.creatfile(),创建文件。
files.creatDirectory,创建文件夹。
files.detele.删除文件夹。
files.copy.复制文件夹。
files.move(),移动文件夹 。
files.size().查看文件数。
files.read().读取文件 。
files.write().写入文件 。

你可能感兴趣的:(java基础面试题)