java面试 关键字

1. final关键字有哪些用法?

修饰类、方法和变量。

(1) final变量是只读的,不允许改变其引用,与static共用可声明常量。JVM会对final变量进行优化,比如常量折叠。

(2) final方法不能被子类覆盖。final方法比非final方法要快,因为在编译的时候已经静态绑定了,不需要在运行时再动态绑定。

(3) final类是不可变类,不能被继承,常用于功能比较完整的类。比如String。

2. throws,和throw有什么区别?

(1) throw是语句抛出一个异常,后面跟对象。

(2) throws是方法可能抛出异常的声明,后面跟异常类型。

3. this的用法?

this是自身的一个对象,代表对象本身,指向对象本身的一个指针。this()需放在构造方法的第一行。

(1) 引用对象成员;
(2) 当形参和成员变量重名时,引用对象变量;
(3) 引用构造函数。

 4. super的用法?

super是指向离自己最近的一个父类对象的一个指针。super()需放在构造方法的第一行。

(1) 引用父类成员,super.父类成员变量

(2) 当子类成员变量或方法与父类成员变量或方法重名时,引用父类成员变量或者成员方法;

(3) 引用父类构造函数。

5. Java访问控制符含义以及不写时的区别?

6. switch 语句中的表达式可以是什么类型数据?

byte、char、short、int、enmu。

JDK1.7开始支持java.lang.String。

转自 大帅哥光焱http://www.cnblogs.com/eagle6688

原文地址:https://www.cnblogs.com/yunfeioliver/p/8400073.html