详解Java中使用externds关键字继承类的用法

 更新时间:2016年07月06日 18:58:12   作者:DBOY  
子类使用extends继承父类是Java面向对象编程中的基础知识,这里我们就来详解Java中使用externds关键字继承类的用法,需要的朋友可以参考下

理解继承是理解面向对象程序设计的关键。在Java中,通过关键字extends继承一个已有的类,被继承的类称为父类(超类,基类),新的类称为子类(派生类)。在Java中不允许多继承。
(1)继承

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)覆盖

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提供对父类的访问。

相关文章

  • Java中的读写锁ReentrantReadWriteLock源码分析

    Java中的读写锁ReentrantReadWriteLock源码分析

    这篇文章主要介绍了Java中的读写锁ReentrantReadWriteLock源码分析,ReentrantReadWriteLock 分为读锁和写锁两个实例,读锁是共享锁,可被多个线程同时使用,写锁是独占锁,持有写锁的线程可以继续获取读锁,反之不行,需要的朋友可以参考下
    2023-12-12
  • 23种设计模式(11)java策略模式

    23种设计模式(11)java策略模式

    这篇文章主要为大家详细介绍了23种设计模式之java策略模式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-11-11
  • java学习之理解自动拆装箱特性

    java学习之理解自动拆装箱特性

    这篇文章主要介绍java自动拆装箱特性以及java自动拆装箱的应用,有需要的朋友可以借鉴参考下,希望可以有所帮助,祝大家早日升职加薪
    2021-09-09
  • java计算百分比值的方法

    java计算百分比值的方法

    这篇文章主要介绍了java计算百分比值的方法,涉及java数值运算的技巧,需要的朋友可以参考下
    2015-03-03
  • java定时任务框架elasticjob详解

    java定时任务框架elasticjob详解

    这篇文章主要介绍了java定时任务框架elasticjob详解,Elastic-Job是ddframe中dd-job的作业模块中分离出来的分布式弹性作业框架。该项目基于成熟的开源产品Quartz和Zookeeper及其客户端Curator进行二次开发。,需要的朋友可以参考下
    2019-06-06
  • Java异常架构和异常关键字图文详解

    Java异常架构和异常关键字图文详解

    Java异常是Java提供的一种识别及响应错误的一致性机制,下面这篇文章主要给大家介绍了关于Java异常架构和异常关键字的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-05-05
  • Java中的HttpServletRequest接口详细解读

    Java中的HttpServletRequest接口详细解读

    这篇文章主要介绍了Java中的HttpServletRequest接口详细解读,是一个接口,全限定名称为Jakarta.Serclet.http.HttpServletRequest
    HttpServletRequest接口是Servlet规范的一员,需要的朋友可以参考下
    2023-11-11
  • 解决@Scope(“prototype“)不生效的问题

    解决@Scope(“prototype“)不生效的问题

    这篇文章主要介绍了解决@Scope(“prototype“)不生效的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • IDEA快速生成实体类的示例教程

    IDEA快速生成实体类的示例教程

    这篇文章主要介绍了IDEA快速生成实体类的示例教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • java 出现问题javax.servlet.http.HttpServlet was not found解决方法

    java 出现问题javax.servlet.http.HttpServlet was not found解决方法

    这篇文章主要介绍了java 出现问题javax.servlet.http.HttpServlet was not found解决方法的相关资料,需要的朋友可以参考下
    2016-11-11

最新评论