理解继承是理解面向对象程序设计的关键。在Java中,通过关键字extends继承一个已有的类,被继承的类称为父类(超类,基类),新的类称为子类(派生类)。在Java中不允许多继承。
  (1)继承
[java] view plain copy
在CODE上查看代码片派生到我的代码片
 class Animal{
 void eat(){
 System.out.println(“Animal eat”);
 }
 void sleep(){
 System.out.println(“Animal sleep”);
 }
 void breathe(){
 System.out.println(“Animal breathe”);
 }
 }
class Fish extends Animal{
 }
public class TestNew {
 public static void main(String[] args) {
 // TODO Auto-generated method stub
 Animal an = new Animal();
 Fish fn = new Fish();
    an.breathe();  
    fn.breathe();  
}  
  }
 在eclipse执行得:
 Animal breathe!
 Animal breathe!
 .java文件中的每个类都会在文件夹bin下生成一个对应的.class文件。执行结果说明派生类继承了父类的所有方法。
(2)覆盖
[java] view plain copy
在CODE上查看代码片派生到我的代码片
 class Animal{
 void eat(){
 System.out.println(“Animal eat”);
 }
 void sleep(){
 System.out.println(“Animal sleep”);
 }
 void breathe(){
 System.out.println(“Animal breathe”);
 }
 }
class Fish extends Animal{
 void breathe(){
 System.out.println(“Fish breathe”);
 }
 }
public class TestNew {
 public static void main(String[] args) {
 // TODO Auto-generated method stub
 Animal an = new Animal();
 Fish fn = new Fish();
    an.breathe();  
    fn.breathe();  
}  
  }
 执行结果:
Animal breathe
 Fish breathe
在子类中定义一个与父类同名,返回类型,参数类型均相同的一个方法,称为方法的覆盖。方法的覆盖发生在子类与父类之间。另外,可用super提供对父类的访问。

京公网安备 11010502036488号