Java基础笔试题

耗尽温柔 提交于 2021-02-17 22:33:58

1、面向对象有(4)个特性,分别为:(抽象)、(继承)、(封装)、(多态性)。有的地方说是3个特性,去掉抽象。

2、在使用super 和this关键字时,以下描述正确的是(A)
A) 在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一行,否则编译不通过
B) super()和this()不一定要放在构造方法内第一行
C) this()和super()可以同时出现在一个构造函数中
D) this()和super()可以在static环境中使用,包括static方法和static语句块

  注意:this不能用在static方法中!

super 用在构造函数时要放在第一行,相当于调用super就刷新了构造函数

具体参考网上的大神博客:http://blog.csdn.net/lpz283929516/article/details/5372894

3、 以下对继承的描述错误的是(A)
A) Java中的继承允许一个子类继承多个父类
B) 父类更具有通用性,子类更具体
C) Java中的继承存在着传递性
D) 当实例化子类时会递归调用父类中的构造方法

4、以下关于final关键字说法错误的是(A,C)(两项)
A) final是java中的修饰符,可以修饰类、接口、抽象类、方法和属性
B) final修饰的类肯定不能被继承
C) final修饰的方法不能被重载
D) final修饰的变量不允许被再次赋值

5、 访问修饰符作用范围由大到小是(D)
A) private-default-protected-public
B) public-default-protected-private
C) private-protected-default-public
D) public-protected-default-private

6、多态的表现形式有(A)
A) 重写
B) 抽象
C) 继承
D) 封装

多态存在的三个必要条件:(1)要有继承(2)要有重写(3)父类引用指向子类对象

java中多态的实现方式:接口实现,继承父类进行方法重写,同一个类中进行方法重载。

7、 以下对重载描述错误的是(B)
A) 方法重载只能发生在一个类的内部
B) 构造方法不能重载
C) 重载要求方法名相同,参数列表不同
D) 方法的返回值类型不是区分方法重载的条件

8、以下对抽象类的描述正确的是(C)
A) 抽象类没有构造方法
B) 抽象类必须提供抽象方法
C) 有抽象方法的类一定是抽象类
D) 抽象类可以通过new关键字直接实例化

9、 以下对接口描述错误的有(D)
A) 接口没有提供构造方法
B) 接口中的方法默认使用public、abstract修饰
C) 接口中的属性默认使用public、static、final修饰
D) 接口不允许多继承

10、==和.equals()有什么区别?

==:判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象。

equals():比较存储在两个字符串对象中的内容是否一致。

11、String 对象创建后则不能被修改,是不可变的,所谓的修改其实是创建了新的对象,所指向的内存空间不同。例如:

String s1 = "lalala";
String s2 = "lalala";
String s3 = new String("lalala");
String s4 = new String("lalala");

//多次出现的字符常量,java变异程序只创建一个,所以返回true

System.out.println(s1 == s2);

//s1和s3是不同的对象,所以返回false

System.out.println(s1 == s3);

//s3和s4是不同的对象,所以返回false

System.out.println(s3 == s4);



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!