正在为您搜索:java、abstract

在Java中,抽象(abstract)是一种关键字,用于定义抽象类和抽象方法。

抽象类是一种不能被实例化的类,它包含了一些未完整实现的抽象方法,这些抽象方法必须被子类实现。抽象类的使用场景是:当一个类具有某些通用特性,但是某些特定实现无法确定时,可以使用抽象类来定义该类,并将特定的实现留给子类来完成。

下面是一个抽象类和抽象方法的示例代码:

public abstract class Shape {public abstract double getArea();
}public class Rectangle extends Shape {private final double width;private final double height;public Rectangle(double width, double height) {this.width = width;this.height = height;}@Overridepublic double getArea() {return width * height;}
}public class Circle extends Shape {private final double radius;public Circle(double radius) {this.radius = radius;}@Overridepublic double getArea() {return Math.PI * Math.pow(radius, 2);}
}

在上面的示例代码中,我们定义了一个抽象类Shape,其中包含了一个抽象方法getArea()。由于抽象方法没有实现代码,因此该类无法被实例化。我们还通过继承Shape类来实现了两个具体的子类RectangleCircle,并分别实现了getArea()方法。

抽象方法是一种没有具体实现的方法,只有声明和方法签名,没有执行语句。当一个类包含了一个或多个抽象方法时,该类必须被声明为抽象类。任何一个非抽象子类都必须实现所有继承的抽象方法才能被实例化。抽象方法的使用场景是:当一个类需要提供某些方法的接口,但是这些方法的具体实现无法确定时,可以将这些方法定义为抽象方法。

下面是一个抽象方法的示例代码:

public abstract class Animal {public abstract void eat();
}public class Dog extends Animal {@Overridepublic void eat() {System.out.println("Dog eating bone");}
}public class Cat extends Animal {@Overridepublic void eat() {System.out.println("Cat eating fish");}
}

在上面的示例代码中,我们定义了一个抽象类Animal,其中包含了一个抽象方法eat()。由于eat()方法没有实现代码,因此该类无法被实例化。我们还通过继承Animal类来实现了两个具体的子类DogCat,并分别实现了eat()方法。

总之,在Java中,抽象类和抽象方法是一种重要的编程工具,可用于描述具有通用特性的类,以及定义方法的接口而不涉及其具体实现。

Java的abstract相关推荐

  1. java 抽象接口类,Java接口(interface)和Java抽象类(abstract class)的区别(详诉版)

    1.概述 一个软件设计的好坏,我想很大程度上取决于它的整体架构,而这个整体架构其实就是你对整个宏观商业业务的抽象框架, 当代表业务逻辑的高层抽象层结构合理时,你底层的具体实现需要考虑的就仅仅是一些算法 ...

  2. Java抽象类(Abstract Class)与接口(Interface)区别

    抽象类与接口比较 抽象类跟接口类似,都不能实例化,可能包含不需实现方法或已实现的方法. 抽象类可以定义一些不是静态或常量的字段,定义 public, protected, private访问级别的具体 ...

  3. JAVA的abstract修饰符 接口interface用法 抽象类和interface的差别

    转自:http://blog.csdn.net/zhandoushi1982/article/details/8458081 abstract修饰符可以修饰类和方法. (1)abstract修饰类,会 ...

  4. java中abstract,interface,final,static的区别

    2019独角兽企业重金招聘Python工程师标准>>> 关键字: abstract, interface, final, static 一,抽象类:abstract 1,只要有一个或 ...

  5. Java中abstract类和abstract方法的相关问题

    当知道一个类的子类将不同的实现某个方法时,把该类声明为抽象类很有用,可以共用相同的父类方法,不必再定义. 抽象类和抽象方法的关系:含有抽象方法的类一定是抽象类,抽象类里不一定含有抽象方法. 抽象类存在 ...

  6. Java中abstract和interface的区别

    abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力. abstract class和inte ...

  7. java interface abstract

    对于面向对象编程来说,抽象是它的一大特征之一.在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类.这两者有太多相似的地方,又有太多不同的地方.很多人在初学的时候会以为它们可以随意互换使用, ...

  8. java的abstract的意思_英语abstract单词是什么意思

    abstract是什么意思 abstract在论文设计里是什么意思Abstract的汉语意识也是摘要, 在论文撰写中Abstract中的内容相当于将你中文摘要的内容翻译成英文,写在Absract下面就 ...

  9. 晋南讲堂之Java抽象类(abstract)与接口(interface)区分

    抽象类(abstract)和接口(interface)的对比 1. 抽象类(abstract)   我们一般声明一个抽象类按照如下形式: abstract class ClassName{//成员变量 ...

最新文章

  1. 自动化测试框架设计模式
  2. proe输入数字时成双出现_罗斯蒙特温度变送器3144P单只和双只输入输出的的含义...
  3. I Hate It (HDU 1754)
  4. Java @override报错的解决方法 .
  5. MySql5.7.12设置log-bin
  6. pycharm 如何自动添加头注释,比如时间,作者信息等
  7. Python项目实践:自动轨迹绘制(根据脚本绘制图形)
  8. 假如我来发明编程语言
  9. Redis持久化-RDB
  10. Python---装饰器
  11. java语言飞机大战代码_飞机大战JAVA代码
  12. AForge处理视频和拍照(暂时没有音频)
  13. erp管理软件是什么
  14. 在Ubuntu18上使用fusedav挂载城通网盘webdav
  15. VAST2.0视频广告投放解决方案改变视频网站未来技术格局
  16. blockquote
  17. Java计算文件MD5值
  18. LensFlare Studio for Mac(镜头光晕特效工具)
  19. 再见postman,被这个一站式接口管理工具折服了
  20. Java系统插件开发原理与实例

热门文章

  1. 计算机二级交付遇到问题怎么解决,交期延误问题的解决办法 !
  2. 360浏览器兼容模式下js失效的问题
  3. 江苏省计算机一级主要考什么,江苏省计算机一级考试复习资料 很全面的
  4. 说一说你的职业规划是怎样的呢?说说未来一年、三年、五年的职业规划
  5. html5字体动画效果,7款超华丽的HTML5 Canvas文字动画特效
  6. 网络基础之虚拟路由器冗余协议(VRRP)理论基础及华为ENSP基础配置
  7. [数据分析笔记] 网易云歌单分析系列03—pyecharts折线图
  8. TypeScript基础+进阶
  9. 倾情分享:Android 开发者们不要错过的网站宝藏~
  10. Linux删除文件之后磁盘空间没有被释放