5例子8.txt

来自「Java大学实用教程 耿祥义编著 课件 PPT」· 文本 代码 · 共 40 行

TXT
40
字号
class  A
{  
    double n;
    int m;
    void f()
    {
       System.out.printf("子类将继承这个方法,n=%f,m=%d\n",n,m); 
    }
    void g() 
    {  
       System.out.printf("你好,n=%f\n",n,m);  
    }  
}
class B extends A 
{ 
    int n=12;
    void g()
    {  
        System.out.printf("我是重写的方法,n=%d,m=%d\n",n,m); 
    }
    void cry()
    { 
       System.out.printf("我是子类新增的方法,n=%d,m=%d\n",n,m); 
    }
}
class Example
{  
    public static void main(String args[ ]) 
    {  
      A a;
      a=new B();            //a是子类对象的上转型对象。
      a.n=0.618;            //操作子类隐藏的double型成员n。
      a.m=200;             //操作子类继承的成员m。
      a.f();                //调用子类继承的方法f。
      a.g();               //调用子类重写的方法g。
                          // a.cry();是非法的。 
      B b=(B)a;           //上转型对象强制转换成子类对象。
      b.n=555;           //操作子类新增的的int型成员n。
      b.cry();
    }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?