Java基础之方法重写和多态示例

2022-10-16,,,,

本文实例讲述了java基础方法重写多态。分享给大家供大家参考,具体如下:

示例代码:

子类的方法与父类的方法具有相同的返回类型和签名,子类方法重写父类方法。

class a{
  int i,j;          //父类变量
  a(int a,int b){    //父类构造
    i=a;
    j=b;
  }
  void show(){     //父类方法
    system.out.println(i+"  "+j);
  }
}
class b extends a{   //继承父类
  int k;             //子类变量
  b(int a,int b,int c){  //子类构造
    super(a,b);     //调用父类构造
    k=c;
  }
  void show(){     //子类方法重写父类方法,会隐藏父类方法
    system.out.println(i+"  "+j);
  }
  void show(string msg){   //子类方法,重载父类方法(方法签名不同,称为重载)
    //super.show();         //显示调用父类方法
    system.out.println(msg+k);
  }
}
class override{
  public static void main(string[] args){
    b b=new b(1,2,3);
    b.show("this is k: ");
    b.show();
  }
}

多态:父类对象可以引用子类对象,引用不同对象造成不同结果,称为多态。

class sup{          //父类
  void who(){
    system.out.println("sup");
  }
}
class sub1 extends sup{     //子类
  void who(){
    system.out.println("sub1");
  }
}
class sub2 extends sup{    //子类
  void who(){
    system.out.println("sub2");
  }
}
class dyndispdemo{
  public static void main(string[] args){
    sup sup=new sup();      //父类对象
    sub1 sub1=new sub1();  //子类对象
    sub2 sub2=new sub2();  //子类对象
    sup supf;    //父类对象
    supf=sup;   //父类对象引用父类对象
    supf.who(); //调用父类方法
    supf=sub1; //父类对象引用子类对象
    supf.who(); //调用子类方法
    supf=sub2; //父类对象引用子类对象
    supf.who(); //调用子类方法
  }
}

更多java相关内容感兴趣的读者可查看本站专题:《java面向对象程序设计入门与进阶教程》、《java数据结构与算法教程》、《java操作dom节点技巧总结》、《java文件与目录操作技巧汇总》和《java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。

《Java基础之方法重写和多态示例.doc》

下载本文的Word格式文档,以方便收藏与打印。