1.类里面可以有什么?(5分)
变量,代码段,方法,内部类,this,super,常量
2.extends是什么?目的是什么?(5分)
继承关键字,代码的重用
3.谈谈你对final的理解.(5分)
Final是最终的,不可更改的,final修饰的类不能被继承,final修饰的成员方法不能被覆写,final修饰的静态变量是常量,成员变量和局部变量不能二次赋值 注意:继承指的是成员属性,只有成员属性可以被继承,堆内存继承
4.abstract和interface的区别?(5分)
Abstract 是修饰符,abstract修饰的类是抽象类,修饰的方法是抽象方法,抽象类中不能创建实例化对象,但是有构造方法,用于子类创建对象调用,并且抽象类中可以没有抽象方法,抽象方法一定在抽象类中. 一个非抽象类继承一个抽象类需要实现所有的抽象方法,一个抽象类继承一个抽象类需要继承0~N个抽象方法.抽象类只能被继承
interface是实现接口关键字,是定义接口的关键字,用interface声明的类是接口,接口中只有抽象方法和常量并且public static 和abstract可以省略,默认就是 ,接口中没有构造方法,也不能被创建实例化对象 注意:类和类之间单继承,接口之间多继承,类和接口之间多实现
5.Student s = new Student(); 这一句话在内存中会有怎么的操作?(5分)
1.加载student类到静态代码段中,然后new在堆内存开辟空间,调用构造的方法,对堆内存对象初始化,构造方法执行完弹栈,把堆内存内存地址返回给s
6. Override和Overload的区别?(5分)
Override是方法覆写:有继承关系的体系中,方法名,参数列表,返回值必须相同,不能比原有的方法有更低的访问权限,不能比原有的方法有更宽泛的异常
Overload方法的重载:方法名相同,参数列表不同(个数不同和类型不同)
7.java面向对象的特性?(5分)
封装,继承,多态,抽象
8.javaJVM特性?(5分)
多线程,跨平台,垃圾自动回收,面向对象