java基础知识8继承

时间:2022-04-16 20:01:57


                  继承

Java三大特征:继承封装多态

继承介绍

现实世界中的继承无处不在。比如:

动物:

   哺乳动物、爬行动物

哺乳动物:

  灵长目、鲸目等

继承度实现:

使用extends关键字即可,extands的意思是扩展。子类是父类的扩展。

【注】JAVA中类只有单继承没有多继承! 只有一个直接父类,接口可以多继承!

publicclass Test

{

  publicstaticvoid main(String[]args)

  {

     Creepa =newCreep();

     a.luansheng();

  }

}

class Animal

{

  //只要是动物就具有的属性和方法

  Stringeye;

  publicvoid run()

  {

     System.out.print("跑跑");

  }

  publicvoid eat()

  {

     System.out.println("吃吃");

  }

 

}

class Mammalextends Animal//哺乳动物也是动物,所以继承动物类的所有属性与方法

{

  

  publicvoid taisheng()

  {

     System.out.println("我是胎生!");

  }

}

class Creepextends Animal//爬行动物类

{

  publicvoid luansheng()

  {

     System.out.print("我是卵生!");

  }

}

方法的重写(override

   在子类中可以根据需要对从基类中继承来的方法进行重写。

   重写方法必须和被重写方法具有相同方法名称、参数列表和返回类型。

重写方法不能使用比被重写方法更严格的访问权限。(由于多态)

 

方法重写和方法重载的区别

    很多人问重写和重载什么区别他们两个完全是两回事。除了名字都带一个字之外。

方法重载指的是:同一个类中,一个方法名对应了多个方法(形参列表不同)

方法的重写指的是:子类重写了父类的方法!

publicclassTest

{

 publicstaticvoid main(String[]args)

 {

    Creepa =new Creep();

    a.luansheng();

    a.run();

 }

}

class Animal

{

 Stringeye;

 publicvoid run()

 {

    System.out.print("跑跑");

 }

 publicvoid sleep()

 {

    System.out.print("睡睡");

 }

}

class Creepextends Animal//爬行动物类

{

 

 publicvoid luansheng()

 {

    System.out.print("我是卵生!");

 }

 publicvoid run()//重写了父类Animal中的run方法

 {

    System.out.println("我是一只小小鸟!想要飞却飞不高哦!");

 }

}

输出结果:我是卵生!我是一只小小鸟!想要飞却飞不高哦!