JAVA开发面试题&基础篇&第四部分
JAVA开发面试题&基础篇&第四部分
选择题( 9 道)
37.关于Java编译,下面哪一个正确()(选择一项)
选项 | 内容 |
---|---|
A | Java程序经编译后产生machine code |
B | Java程序经编译后会生产byte code |
C | Java程序经编译后会产生DLL |
D | 以上都不正确 |
答案:B
分析: Java是解释型语言,编译出来的是字节码; 因此A不正确,C是C/C++语言编译动态链接库的文件为.DLL; 正确答案为B
38.下列说法正确的有()(选择一项)
答案:C
分析:A:如果class中的construtor省略不写,系统会默认提供一个无参构造
B:方法名可以与类名同名,只是不符合命名规范
D:一个class中可以定义N多个construtor,这些construtor构成构造方法的重载
39.Java中接口的修饰符可以为()(选择一项)
选项 | 内容 |
---|---|
A | private |
B | protected |
C | final |
D | abstract |
答案:D
分析:接口中的访问权限修饰符只可以是public或default
接口中的所有的方法必须要实现类实现,所以不能使用final
接口中所有的方法默认都是abstract的,所以接口可以使用abstract修饰,但通常abstract可以省略不写
40.给定以下代码,程序将输出 ()(选择一项)
class A {
public A(){
System.out.println("A");
}
}
class B extends A{
public B(){
System.out.println("B");
}
public static void main(String[] args) {
B b=new B();
}
}
选项 | 内容 |
---|---|
A | 不能通过编译 |
B | 通过编译,输出AB |
C | 通过编译,输出B |
D | 通过编译,输出A |
答案:B
分析:在继承关系下,创建子类对象,先执行父类的构造方法,再执行子类的构造方法。
41.下列关于关键字的使用说法错误的是()(选择一项)
选项 | 内容 |
---|---|
A | abstract不能与final并列修饰同一个类 |
B | abstract类中可以有private的成员 |
C | abstract方法必须在abstract类中 |
D | static方法能处理非static的属性 |
答案:D
分析:因为static得方法在装载class得时候首先完成,比 构造方法早,此时非static得属性和方法还没有完成初始化所以不能调用。
42.下列哪些语句关于内存回收的说法是正确的()(选择一项)
选项 | 内容 |
---|---|
A | 程序员必须创建一个线程来释放内存 |
B | 内存回收程序负责释放无用内存 |
C | 内存回收程序允许程序员直接释放内存 |
D | 内存回收程序可以在指定的时间释放内存对象 |
答案:B
分析: A. 程序员不需要创建线程来释放内存.
C. 也不允许程序员直接释放内存.
D. 不一定在什么时刻执行垃圾回收.
43.选出合理的标识符()(选择两项)
选项 | 内容 |
---|---|
A | _sysl_111 |
B | 2 mail |
C | $change |
D | class |
答案:AC
分析: 标识符的命令规范,可以包含字母、数字、下划线、$,不能以数字开头,不能是Java关键字
44.下列说法正确的是()(选择多项)
选项 | 内容 |
---|---|
A | java.lang.Cloneable是类 |
B | java.langRunnable是接口 |
C | Double对象在java.lang包中 |
D | Double a=1.0是正确的java语句 |
Double a=1.0是正确的java语句
分析:java.lang.Cloneable是接口
45.定义一个类名为”MyClass.java”的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明为()(选择两项)
选项 | 内容 |
---|---|
A | class MyClass extends Object |
B | public class MyClass |
C | public class MyClass extends Object |
答案:BC
分析: A 使用默认访问权限的类,只能在本包中访问
本文地址:https://blog.csdn.net/zsk1996888/article/details/109629155