权限修饰符、内部类与代码块相关题目
1. 访问权限修饰符
1. 请按作用范围从小到大的顺序写出四种访问权限修饰符。
private、protected、default(默认的)、public
2. 请问修饰“类”可以使用什么权限修饰符?
类可以使用 default(默认的) 和 public 进行修饰
3. 请问修饰“成员属性”可以使用什么权限修饰符?
四种访问权限修饰符都可以
4. 请问构造方法可以使用什么权限修饰符?
四种访问权限修饰符都可以
2. 内部类
1. 请问有几种形式的内部类?
两种,分别是成员内部类和匿名内部类。
2. 请问内部类会被编译成class文件吗?
内部类仍然是一个独立的类,编译后内部类会被编译成单独的class文件。
3. 请问下面横线处分别填写什么代码,才能实现打印:
class Outside{
private int a = 100;
class Inside{
private int a = 200;
public void show(){
int a = 300;
System.out.println(___________);
System.out.println(___________);
Ssytem.out.println(___________);
}
}
}
class Outside {
private int a = 100;
class Inside {
private int a = 200;
public void show() {
int a = 300;
System.out.println(new Outside().a);
System.out.println(this.a);
System.out.println(a);
}
}
}
4. 请问下面横线处分别填写什么代码,才能实现打印:
class Outside{
public void show(){
__________
class Inside{
public void show(){
System.out.println(“a = “ + a);
}
}
}
}
public class Outside {
public void show() {
int a = 10;
class Inside {
public void show() {
System.out.println("a = " + a);
}
}
Inside inside = new Inside();
inside.show();
}
}
5. 请按要求填写代码:
interface Animal {
public void show();
}
class Test {
public static void main(String[] args) {
fun(________________________);
fun(________________________);
}
public static void fun(Animal a) {
a.show();
}
}
interface Animal {
public void show();
}
class Test {
public static void main(String[] args) {
class Cat implements Animal {
@Override
public void show() {
System.out.println("成员内部类作为参数...");
}
}
fun(new Cat());
fun(new Animal() {
@Override
public void show() {
System.out.println("匿名内部类作为参数...");
}
});
}
public static void fun(Animal a) {
a.show();
}
}
3. 代码块
1. 请问有几种代码块?它们分别是什么?它们的作用是什么?
几种代码块:代码块一共有三种
分别是什么:分别是局部代码块、构造代码块和静态代码块
他们的作用:
局部代码块:限制局部变量的作用范围,提前释放内存
构造代码块:每次创建对象时都会执行,可用来初始化对象
静态代码块:类被加载到内存时执行,且只执行一次,可用于项目中仅需执行一次的操作
原文链接:https://qwert.blog.csdn.net/article/details/105356204