权限
-
main 方法是 Java Application 程序执行的入口点,以下描述哪项是合法的()。
继承、重载
- C++可以多重继承,但是Java中对于类而言,只有单继承,接口可以多继承。
-
Java不能重载运算符,C++可以。
接口与抽象类的区别
1 .抽象类要被子类继承,接口要被类实现;
2 .接口只能做方法声明,抽象类中可以作方法声明,也可以做方法实现。
3 .接口里定义的变量只能是公共的静态的常量,
抽象类中的变量可以是普通变量。
4 .抽象类可以有具体的方法和属性,接口只能有抽象方法和不可变常量。
【同:两者都能有静态抽象内部类!!!】
5 .抽象类和接口都是用来抽象具体对象的,但是接口的抽象级别最高。
6 .接口是设计的结果,抽象类是重构的结果。
7 .抽象类主要用来抽象类别,接口主要用来抽象功能。![]()
题目
- 地址
A.vector是线程安全的ArrayList,在内存中占用连续的空间。
初始时有一个初始大小,
当数据条数大于这个初始大小后会重写分配一个更大的连续空间。
如果Vector定义为保存Object则可以存放任意类型,
无需事先知道!!!
B.选项说的情况就是我们自定义异常的情况,
我们可以用违例(Exception)来抛出一些并非错误的消息,
可以,并非错误的消息。
比如我自定义一个异常,若一个变量大于10就抛出一个异常,
这样就对应了B选项说的情况,
我用抛出异常说明这个变量大于10,
而不是用一个函数体(函数体内判断是否大于10,然后返回true或false)判断,
因为函数调用是入栈出栈,栈是在寄存器之下的速度最快,且占的空间少,
而自定义异常是存在堆中,肯定异常的内存开销大!
C选项是错误的,因为接口中不能声明变量,只有常量!
接口中只有常量定义,没有变量声明。
接口中方法默认是abstract public,
所以在接口只写函数声明是符合语法规则。
但是变量默认是用public final static 修饰的,
意思它是静态常量,不是变量!
另外,
常量不管在接口中还是类中必须在声明时初始化。
D.子类可以访问父类受保护的成员
访问修饰符 访问范围 继承性
private 本类内部 不可继承 私有的
(default) 本类+同包 同包子类可以继承 默认的
protected 本类+同包+子类 可以继承 受保护的
public 公开 可以继承 公开的
本文深入探讨Java与C++的特性差异,包括权限、继承、重载、接口与抽象类的区别,以及Vector与ArrayList的线程安全性。解析Java不能重载运算符,而C++可以,同时详细阐述接口与抽象类在设计与重构中的应用。

被折叠的 条评论
为什么被折叠?



