1、java为什么可以一次编写,多处运行?
答:jvm是java跨平台的关键,在程序运行前,通过javac编译器将.java的程序编译成.class文件,而.class文件是可以被任一虚拟机翻译成机器码运行。
总结:只要你的机器上面装了jvm,就可以运行Java文件。
2、一个Java文件里可以有多个类嘛?
1)一个java文件只可以存在一个被public修饰的类
2)一个java文件可以有多个类
3、访问修饰符
- public :任意包可见
- protected:本类可见,本包可见,继承可见
- default:本类可见,本包可见
- private:本类可见,本包不可见,继承不可见
4、数据类型
数据类型包括基本类型和引用类型
基本类型:byte、short、int、long、char、float、double、Boolean
Byte:1字节 short:2字节 int:4字节 long:8字节
float:4字节 double:8字节 char:2字节 Boolean:java规范没有明确的规定,不同的jvm有不同的实现机制。
引用类型:除了基本类型,其他的数据都是引用类型。
5、实例的默认值
答:char:’\u0000’
6、为啥要有包装类?
答:基于万物都是对象,8种基本数据类型都需要对象的特性。
7、Interger和Double类型判断相等?
答:可以将Integer、Double转化为相同的基本类型(如double),然后使用==或者equals判断是否相等。
8、int和Integer有什么区别,二者在做==运算时会得到什么结果?
答:int是基本类型,interger是int的包装类,两者在做==运算时,interger会自动拆箱成int类型,然后再比较。
9、说一说那你对面向对象的理解
答:面向对象的概念就是万物皆是对象,拿一个例子来举例吧:
洗衣服:面向过程呢,就是先放水,然后放洗衣粉,放衣服,然后开始洗衣服,洗甩等
面向对象,人是一个对象,洗衣机是一个对象,人先放水、放衣服、放洗衣粉,然后由洗衣机来洗甩等。
10、面向对象的三大特征是什么?
答:封装、继承、多态
11、封装的目的是什么?为什么要有封装?
答:封装的目的是隐藏内部细节,只保留对外的接口,对使用的人,只需要知道它的功能,而不需要它的细节,有利于保证对象信息的完整性。
12、多态的理解
答:同一个方法被调用的时候可以呈现出多种不同的行为特征。
13、多态是怎么实现的?
答:对父类方法的重写,接口的实现
14、为什么java是单继承的?为什么不能多继承?
答:java是单继承的,java只能继承一个父类,不能多继承的原因是,如果继承的两个父类含有两个相同的方法,那么就会出现混淆。
15、说一说重写和重载的区别
答:重写:处于父类和子类之间,相同的方法名,参数列表相同,返回值要小于父类的返回值,访问修饰符大于父类修饰符,如果父类修饰符是private,则子类不能进行重写。
重载:处于同一个类中,相同的方法名,参数列表不同,返回类型和访问修饰符可以不同
16、构造方法能不能重写?
答:构造方法不能重写,因为构造方法需要和类保持一致,而重写的要求是子类要和父类方法保持同名,如果允许重写构造方法的话,就矛盾了。
17、介绍一个object方法
答:wait、notify、notifyall、finalize(给gc判断是否可以被回收)、equals、hashcode、tostring、clone。
Finalize用于资源 释放,标记这个对象,并被GC主动释放。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)