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