JavaSE day02【关键字,代码块,接口,枚举】测评

发布时间 2023-10-23 11:47:24作者: 奋斗的软件工程师

选择题

题目1(单选):

下列关于static关键字描述错误的是( )

选项 :

​ A. 静态成员被所类的所有对象共享

​ B. 可以通过对象调用 , 也可以通过类名调用 , 建议使用类名

​ C. 每调用一次都会在内存产生一个新的对象

​ D. 随着类的加载而加载 , 优先于对象存在

题目2(多选):

下列关于静态方法描述正确的是( )

选项 :

​ A. 非静态方法中可以调用任何成员

​ B. 静态方法中可以使用this和super区分成员

​ C. 静态方法中只能调用静态成员

​ D. 静态方法只能通过对象进行调用

题目3(单选):

下列关于final关键字描述错误的是( )

选项 :

​ A. final修饰的类不能被继承 , 没有子类(太监类)

​ B. final修饰的类不能创建对象

​ C. final修饰的方法不能被重写

​ D. final修饰的变量只能被赋值一次

题目4(单选):

**下列关于权限修饰符访问权限从大到小排序的是( ) **

选项 :

​ A. public -- 默认的 -- protected -- private

​ B. public -- protected -- 默认的 -- private

​ C. public -- protected -- private -- 默认的

​ D. protected -- public -- 默认的 -- private

题目5(单选):

下列关于构造代码块说法错误的是 ( )

选项 :

​ A. 构造代码块可以用来抽取构造方法中共性内容

​ B. 每次构造方法执行前, 都会执行构造代码块

​ C. 用一对大括号表示, 定义在类中方法外

​ D. 构造代码块随着类的加载而执行

题目6(单选):

下列关于静态代码块说法错误的是 ()

选项 :

​ A. 一般用于给静态成员初始化

​ B. 随着类的加载而加载 , 只加载一次

​ C. 每次构造方法执行前都会先执行一次静态代码块

​ D. 在一对大括号前加上static关键字 , 定义在类中方法外

题目7(单选):

下列关于接口说法正确的是( )

选项 :

​ A. 接口中的方法只能是抽象方法

​ B. 接口可以进行创建对象

​ C. 类和接口之间是实现关系,一个类只能实现一个接口

​ D. 接口的子类我们称作为实现类,实现类要么重写所有的抽象方法,要么实现类是一个抽象类

题目8(多选):

下列关于接口的成员说法正确的是( )

选项 :

​ A. 成员变量都是常量 , 默认修饰符 public static final

​ B. 没有构造方法

​ C. 在JDK8版本增加了默认方法,静态方法,私有方法

​ D. 在JDK8版本前只能是抽象方法 , 默认修饰符public abstract

题目9(单选):

查看下列代码 , 选出程序正确的执行结果( )

public enum Sex {
    // 每一个枚举项都是枚举的对象
    GIRL("女孩"), BOY("男孩");
    
    private String name;

    private Sex() {
    }
    private Sex(String name) {
        this.name = name;
    }
    public String getName() {
        return name;
    }
}

class Test {
    public static void main(String[] args) {
        System.out.println(Sex.GIRL.getName());
        System.out.println(Sex.BOY.getName());
    }
}

选项 :

​ A. 女孩 , 男孩

​ B. null , null

​ C. GIRL , BOY

​ D. 地址 , 地址

题目10(多选):

下列关于类和接口的关系说法正确的是( )

选项 :

​ A. Java中的类与类只能单继承 , 可以多层继承

​ B. Java中的类与接口是实现关系 , 一个类可以在继承一个类的同时实现多个接口

​ C. Java中的接口与接口属于实现关系 , 只能单实现

​ D. Java中的接口与接口属于继承关系 , 可以单继承 , 也可以多继承

答案

C AC B B D / C D ABD A ABD