文档介绍:Java基础笔试题库选择篇
:( )
class A {
protected int method1 (int a, int b) {
return 0;
}
}
A. public int method 1 (int a, int b) { return 0; }
B. private int method1 (int a, int b) { return 0; }
C. private int method1 (int a, long b) { return 0; }
D. public short method1 (int a, int b) { return 0; }
解答:AC
主要考查子类重写父类的方法的原则
B,子类重写父类的方法,访问权限不能降低
C,属于重载
D,子类重写父类的方法返回值类型要相同或是父类方法返回值类型的子类
method cannot be static. True or False ?
A True
B False
解答:A
抽象方法可以在子类中被重写,但是静态方法不能在子类中被重写,静态方法和静态属性与对象是无关的,只与类有关,这与abstract是矛盾的,所以abstract是不能被修饰为static,否则就失去了abstract的意义了
will be the output when pile and execute the following program.
当你编译和执行下列程序的时候,会是什么输出。
class Base{
void test() {
(“()”);
}
}
public class Child extends Base {
void test() {
(“()”);
}
static public void main(String[] a) {
Child anObj = new Child();
Base baseObj = (Base)anObj;
();
}
}
Select most appropriate answer.
A ()
()
B ()
()
C ()
D ()
解答:D
测试代码相当于:Base baseObj = new Child();父类的引用指向子类的实例,子类又重写了父类
的test方法,因此调用子类的test方法。
will be the output when pile and execute the following program.
class Base
{
static void test() {
(“()”);
}
}
public class Child extends Base {
void test() {
(“()”);
(); //Call the parent method
}
static public void main(String[] a) {
new Child().test();
}
}
Select most appropriate answer.
A ()
()
B ()
()
pilation error. Cannot override a static method by an instance method
D Runtime error. Cannot override a static method by an instance method
解答:C
静态方法不能在子类中被重写
will be the output when pile and execute the following program.
public class Base{
private void test() {
(6 + 6 + “(Result)”);
}
static public void main(String[] a) {
new Base().test