在主类E的main方法中,创建类B 的对象并赋给父类A的对象a,使用上转型对象a来测试上转型对象的一些特性。

时间:2022-12-11 00:12:59
public class A {

    private int a=1;

    public int getA() {
return a;
}
public void setA(int a) {
this.a = a;
} public void a()
{
System.out.println("a="+a);
}
public void c()
{
System.out.println("a-1="+(a-1));
}
}
package jicheng;

public class B extends A {
private int a=3;
private int b=2; public int get() {
return a;
}
public void setA(int a) {
this.a = a;
}
public int getB() {
return b;
}
public void setB(int b) {
this.b = b;
} @Override
public void a() {
// TODO 自动生成的方法存根
//super.a();
System.out.println("a+b="+(a+b));
}
public void b()
{
System.out.println("b="+b);
} }
package jicheng;

public class E {
public static void main(String[] args) {
B i=new B();
i.a();
i.b();
//A a=new A(); //父类的对象
A a=i; //调用的是父类的方法,执行的却是子类的方法,因为子类方法覆盖了父类方法
a.a(); //调用的是父类的方法
a.c(); } }

在主类E的main方法中,创建类B 的对象并赋给父类A的对象a,使用上转型对象a来测试上转型对象的一些特性。