一道SCJP题: Java codeclass A {
A() {}
}class B extends A {}Which two statements are true? (Choose two) A. Class B's constructor is public.
B. Class B's constructor has no arguments.
C. Class B's constructor includes a call to this().
D. Class B's constructor includes a call to super().
答案是:BD 我想问:
默认的构造函数是public还是friendly?为什么A不对?
我试了下,把以上class A跟class B放在一个包里,在另外个包里new B(),可以正常运行啊,如果是friendly不是只有包的访问权限么。但如果给B加上构造函数:B(){}。则在包外不可以用B()。提示不可见。
A() {}
}class B extends A {}Which two statements are true? (Choose two) A. Class B's constructor is public.
B. Class B's constructor has no arguments.
C. Class B's constructor includes a call to this().
D. Class B's constructor includes a call to super().
答案是:BD 我想问:
默认的构造函数是public还是friendly?为什么A不对?
我试了下,把以上class A跟class B放在一个包里,在另外个包里new B(),可以正常运行啊,如果是friendly不是只有包的访问权限么。但如果给B加上构造函数:B(){}。则在包外不可以用B()。提示不可见。
ConSup(){}
}package constractor;public class ConSub extends ConSup {
//ConSub(){}
}package test;import constractor.ConSub;public class Test { public static void main(String[] args) {
ConSub sub = new ConSub(); }}
这样子没有报错,即包外可见啊。
但题目中类名不是public的……