java 考试问答(二)
前言 由于这周身边没有带电脑,把之前汇总的期末题目分享一下类及类成员的访问控制符有哪些?
答:类成员访问修饰符:
Public :可以从所有的类中访问它;Protected:只能从本类及其子类中访问它;
Private:只能从本类中访问它;
abstract:没有方法体,属于一个抽象类 ;
final :子类不能覆盖它 ;
static:被绑定于类本身而不是类的实例 ;
native :该方法由其他编程语言实现 ;
asnchronized :在一个线程调用它之前必须先给它加。
关键字static可以修饰哪些类的组成部分?
答:关键字static可以修饰符可以修饰类的每个部分。
抽象方法有什么特点?抽象方法的方法体在何处定义?定义抽象方法有什么好处?
答:抽象方法实际上可以理解为没有方法体,抽象方法必须被子类重载。抽象方法的方法体必须在子类中实现。不同的子类可以以不同的方式实现同一父类的抽象方法,间接的实现的多态。
final修饰符可以用来修饰什么?被final修饰符修饰后有何特点?
答:final修饰符可以用来修饰变量、类,使用final修饰符的变量和类,被称为常量、最终类。
接口中包括什么?接口中的各成员的访问控制符是一样的吗?是什么?
答:接口就是一些方法特征的集合------接口是对抽象的抽象,接口中的各成员的访问控制符是public.
创建接口使用什么关键字?接口可以有父接口吗?试书写语句创建—个名为MyInterface的接口,它是继承了MySuperInterface1和MySuperInterface2两个接口的子接口。
答:创建接口的关键字是interface。接口可以有父接口。
Public interface MyInterface MySuperInterface1,MySuperInterface2
{
}
实现接口的类是否必须覆盖该接口的所有抽象方法?
答:实现接口的类如果不是抽象类必须覆盖该接口的所有抽象方法。
实现接口的抽象方法时,方法头应该与接口中定义的方法头完全一致,但是有时需要增加一个public修饰符,为什么?
答:在接口的所有方法默认的修饰符是:public,如果不使用将发生错误。
简述Java提供的5个基本的注解及作用。
@Override - 当我们想要重写父类中的方法时,我们需要使用该注解去告知编译器我们想要重写这个方法。这样当父类中的方法移除或者发生更改时编译器将提示错误信息。
@Deprecated - 当我们希望编译器知道某一方法不建议使用时,我们应该使用这个注解。Java在javadoc 中推荐使用该注解,我们应该提供为什么该方法不推荐使用以及替代的方法。
@SuppressWarnings - 这个是告诉编译器忽略特定的警告信息,它会一直作用于该程序元素的所有子元素,如果使用@SuppressWarnings修饰某个类取消显示某个编译器警告,同时又修饰该类里的某个方法取消显示另一个编译器警告,那么该方法将会同时取消显示着这两个编译器警告。
@SafeVarargs - 提醒开发者不要用参数做一些不安全的操作,它的存在会阻止编译器产生 unchecked 这样的警告。当开发者不想看到这样的警告,就可使用@SafeVarargs修饰引发该警告的方法或者构造器。
@FunctionalInterface -用来指定某个接口必须是函数式接口,而且它只能用来修饰接口,不能修饰其它元素
Lambda表达式由哪三部分组成?
- 形参列表:形参列表可以省略形参类型。若形参列表中只有一个参数,则,可以省略形参列表的圆括号()。
- 箭头(->):由英文的中划线和大于号组成。
- 代码段:若代码段中只有一条语句,则可以省略花括号{};若代码段中只有一条return语句,则可以省略return关键字;若代码段中只有一条没有return的语句,则可以自动返回这条语句的值。