JDK:是Java的开发工具包,提供了Java的开发环境和运行环境
JRE:是Java的运行环境,为Java的运行了提供了所需环境
具体来说JDK及时包含了编辑JRE,同时还包含了编译Javac,还包含了很多Java程序调试和分析的工具。简单来说:如果你需要运行Java的程序,只需要安装JER就可以了,如果你需要编写Java程序,需要安装JDK
2.==和equals的区别是什么==对于基本类型来说是比较值,对于引用来说是引用;
equals默认情况下是应用比较,只是很多类重新了equals方法,比如String、Intteger 等把变成了值比较,所以一般情况下equals比较是否相等。
原理上来说:==判断两个变量和实例是否在同一个内存里,如果在为true,如果不在为false,
equals判断两个变量和实例在同一个内存了的值是否相同,如果相同为true,如果不同为false。
3.两个对象的HashCode()相同,则equals()也一定true,对吗?答:不对,两个对象的hashCode()相同,equals()不一定true
4.fianl 在Java中有什么作用?fianl 他修饰的类叫做最终类,该类不能被继承。
fianl 他修饰的方法不能被重写
fianl 他修饰的变量叫做常量,常量必须是初始化,初始化之后值不能被修改。
5.Java中的Math.round(-1.5)等于多少等于-1,应为在数轴上取值时,中间值(0.5)想右取整,所以正0.5是象上取整,负0.5是直接舍去
6.String属于基础的基本类型吗?String不属于基础类型,基础类型8种:byte、boolean、char、short、int、f'loat、long、doubble
而String属于对象
7.Java中 *** 作字符串都有哪些类?他们之间有什么区别?*** 作字符串的类有:String、StringBuffer、StringBuilder
String 和StringBuffer、StringBuilder的区别在于String声明的是不可变的对象,每次 *** 作都会生成新的String对象,然后将指针指向新的String的对象,而StringBuffer、StringBuilder可以在原有对象的基上进行 *** 作,所以在经常改变字符串内容的情况下最好不要使用String.
StringBuffer和StringBuilder最大的区别在于StringBuffer是线程安全的,而StrinBuilder是非线程安全的,但StringBuilder的性能却高于StringBuffer,所以单线程情况下使用StringBuilder,多线程环境下使用StringBuffer。
8.普通类和抽象类区别普通类:普通类不可以有抽象方法,抽象类可以有抽象方法
抽象类:普通类可以实例化,而抽象类不可以实例化
9.final可以修饰抽象类吗?答:不能,因为定义的抽象类是让其他类继承的,而定义final该类的不是被继承的,这样彼此会产生矛盾,所以final不能修饰抽象类
10.接口与抽象类的有什么区别实现:接口必须是用implements来实现接口,而抽象类是extends来继承
构造函数:抽象类可以构造函数,接口不可以有构造函数
实现数量:类可以实现很多接口,但只能继承一个抽象类。
访问修饰符:接口中的方法默认使用public修饰,抽象类中的方法可以是任意的访问修饰符。
11.如果将字符串进行反转使用StringBuider或者是StringBuffer的reverse()方法
12.String类的常用方法都有哪些indexOf():返回指定字符的索引
charAt():反正指定索引处的字符
replace():字符串替换
equals():字符的比较
length():返回字符串的长度
13.抽象类必须有抽象方法吗?抽象类不一定要有抽象方法
14.接口与抽象类有什么区别实现:抽象类的子类是用extends来继承,接口必须是用implements来实现接口。
构造函数:抽象类可有构造函数,接口没有构造函数。
实现接口:类可以实现多个接口,类只能继承一个抽象类。
15 Java中IO流分几种?按功能来分:输入流(input)、输出流(output)
按类型来分:字节流和字符流。
字节流和字符流的区别是:字节流按8位传输以字节位单位输入输出数据,字符流按16位传输与字符为单位输入输出数据。
16.Files的常用方法都有那些Files. exists():检测文件路径是否存在。
Files. createFile():创建文件。
Files. createDirectory():创建文件夹。
Files. delete():删除一个文件或目录。
Files. copy():复制文件。
Files. move():移动文件。
Files. size():查看文件个数。
Files. read():读取文件。
Files. write():写入文件。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)