class A{
public static void prt(){
System.out.println("1");
}
public A(){
System.out.println("A");
}
}
public class B extends A{
public static void prt(){
System.out.println("2");
}
public A(){
System.out.println("B");
}
public static void main(String[] args){
A a=new B();
a=new A();
}
}
求输出结果并求原因,谢谢!
public static void prt(){
System.out.println("1");
}
public A(){
System.out.println("A");
}
}
public class B extends A{
public static void prt(){
System.out.println("2");
}
public A(){
System.out.println("B");
}
public static void main(String[] args){
A a=new B();
a=new A();
}
}
求输出结果并求原因,谢谢!
public static void prt(){
System.out.println("1");
}
public A(){
System.out.println("A");
}
}
public class B extends A{
public static void prt(){
System.out.println("2");
}
public B(){
System.out.println("B");
}
public static void main(String[] args){
A a=new B();
a=new A();
}
}
你代码写错了,B的构造函数应该是B ,否则运行失败
A
B
A
new B()//如果有父类先调用父类构造器,然后在调用子类
还有静态方法不能多态
接分,楼上的~~
A
B
AA a=new B();// 首先要调用父类的构造器A,然后自己的构造器B
a=new A(); // new A 当然要调用父类的构造器了