JAVA抽象类和抽象方法(abstract)实例分析

 更新时间:2019年11月08日 10:35:55   作者:自学开发的老司机  
这篇文章主要介绍了JAVA抽象类和抽象方法(abstract),结合实例形式分析了java抽象类及抽象方法相关定义、使用技巧与操作注意事项,需要的朋友可以参考下

本文实例讲述了JAVA抽象类和抽象方法(abstract)。分享给大家供大家参考,具体如下:

一、抽象(abstract)的使用

  当父类的某些方法不确定时,可以用abstract关键字来修饰该方法[抽象方法],用abstract来修饰该类[抽象类]。

  我们都知道,父类是将子类所共同拥有的属性和方法进行抽取,这些属性和方法中,有的是已经明确实现了的,有的还无法确定,那么我们就可以将其定义成抽象,在后日子类进行重用,进行具体化。这样,抽象类也就诞生了。

  例如,定义了“动物”父类,其中“动物名称”和“动物年龄”属性已经明确了,但是“动物叫”的方法没有明确,此时就可以将“动物叫”定义为抽象方法。

  所以,抽象类是为了把相同的但不确定的东西的提取出来,为了以后的重用。定义成抽象类的目的,就是为了在子类中实现抽象类。

package javastudy;
public class AbstractDemo1 {
  public static void main(String[] args) {
    // TODO Auto-generated method stub
  }
}
// 这就是一个抽象类
abstract class Animal {
  String name;
  int age;
  // 动物会叫
  public abstract void cry(); // 不确定动物怎么叫的。定义成抽象方法,来解决父类方法的不确定性。抽象方法在父类中不能实现,所以没有函数体。但在后续在继承时,要具体实现此方法。
}
// 抽象类可以被继承
// 当继承的父类是抽象类时,需要将抽象类中的所有抽象方法全部实现。
class cat extends Animal {
  // 实现父类的cry抽象方法
  public void cry() {
    System.out.println("猫叫:");
  }
}

二、用abstract修饰的类,即抽象类;用abstract修饰的方法,即抽象方法。

三、抽象方法不能有方法主体。格式如下:

abstract void xxx();

四、抽象类不能被实例化。因为抽象类中方法未具体化,这是一种不完整的类,所以直接实例化也就没有意义了。

五、抽象类中不一定要包含abstrace方法。也就是了,抽象中可以没有abstract方法。

六、一旦类中包含了abstract方法,那类该类必须声明为abstract类。

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

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

相关文章

  • 使用@Validate分组验证参数

    使用@Validate分组验证参数

    SpringFramework的@Validated注解用于方法级别参数验证,结合BeanValidation规范,支持分组验证,通过指定验证分组,可以在不同场景下执行不同的验证逻辑
    2024-11-11
  • EL表达式简介_动力节点Java学院整理

    EL表达式简介_动力节点Java学院整理

    EL全名为Expression Language,这篇文章主要给大家介绍EL表达式的主要作用及内容简介,感兴趣的朋友一起看看
    2017-07-07
  • SpringBoot2.0整合SpringCloud Finchley @hystrixcommand注解找不到解决方案

    SpringBoot2.0整合SpringCloud Finchley @hystrixcommand注解找不到解决方案

    这篇文章主要介绍了SpringBoot2.0整合SpringCloud Finchley @hystrixcommand注解找不到解决方案,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • Java设计模式之备忘录模式详解

    Java设计模式之备忘录模式详解

    这篇文章主要介绍了Java设计模式之备忘录模式详解,备忘录模式在不破坏封装性的前提下,捕获一个对象的内部状态并在该对象之外保存这个状态,这样以后就可以将该对象恢复到原先保存的状态,需要的朋友可以参考下
    2023-12-12
  • Java单例模式简单示例

    Java单例模式简单示例

    这篇文章主要介绍了Java单例模式,结合实例形式简单分析了java单例模式的定义与使用技巧,需要的朋友可以参考下
    2017-06-06
  • Java实现经典游戏泡泡堂的示例代码

    Java实现经典游戏泡泡堂的示例代码

    这篇文章将利用Java制作经典游戏——泡泡堂,游戏设计为双人pk积分赛模式,在这个模式里面,玩家只要率先达到一定分数既可以赢得比赛。感兴趣的可以了解一下
    2022-04-04
  • Java实现多线程大批量同步数据(分页)

    Java实现多线程大批量同步数据(分页)

    这篇文章主要为大家详细介绍了Java实现多线程大批量同步数据(分页),文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-08-08
  • Java中解压缩文件的方法详解(通用)

    Java中解压缩文件的方法详解(通用)

    在软件开发和数据处理领域,文件的解压缩和压缩是常见的任务,下面这篇文章主要给大家介绍了关于Java中解压缩文件的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-06-06
  • Netty事件循环主逻辑NioEventLoop的run方法分析

    Netty事件循环主逻辑NioEventLoop的run方法分析

    这篇文章主要介绍了Netty事件循环主逻辑NioEventLoop的run方法分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-03-03
  • Linux服务器Java进程消失问题解决

    Linux服务器Java进程消失问题解决

    这篇文章主要介绍了Linux服务器Java进程消失问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11

最新评论