抽象

面向对象编程中,抽象是一个很重要的概念,那么抽象有什么需要注意的地方呢?请熟记以下知识点。

  1. 如果父类当中的方法不确定如何进行方法体的实现,则这个方法就是抽象方法。
  2. 抽象方法只需要在方法前面加上abstract关键字。然后不需要写方法体(去掉大括号即可)。
  3. 抽象方法所在的类,必须为抽象类才行。
  4. 抽象类只需要在类名前面写上abstract关键字即可。
  5. 抽象类中可以定义普通成员方法。
  6. 不可以直接创建抽象类对象。
  7. 必须有继承抽象类的子类,且子类中必须实现父类中的所有抽象方法(除非子类也是抽象类),且必须去掉abstract关键字,继而实现方法体。
  8. 子类实现抽象类的抽象方法本质上是覆盖重写,所以可以并且建议写上 @Override 。
  9. 抽象类中可以有构造方法,是用来初始化父类成员使用的。
  10. 抽象类中不一定有抽象方法,但是有抽象方法的类必定是抽象类。
  11. 没有抽象方法的抽象类也不可以直接new对象。

代码:

父类:

public abstract class Animal {

public static int id = 0;

    public int age;

    public String name;

public Animal(int age,String name){

this.age = age;

        this.name = name;

        id++;

        drink();

    }

public abstract void eat();

public void drink(){

System.out.println(age + "岁的" +  this.name + "喝水");

    }

}

子类:

public class Dog extends Animal {

public Dog(int age,String name){

super(age,name);

    }

@Override

    public void eat(){

System.out.println(super.age + "岁的" + super.name + "吃骨头");

    }

}

运行代码:

public class Demo {

public static void main(String[] args) {

Dog dog = new Dog(3,"二哈");

        dog.eat();

    }

}

Java第八天,抽象的概念是什么?如何完成抽象类的实现?的更多相关文章

  1. java类(Class)的概念;对象的概念,声明类的属性 和方法,局部变量和成员变量,面向对象编程思维,抽象的概念

    类(Class)的概念 类是对一组具有相同特征和行为的对象的抽象描述. 理解: [1] 类包含了两个要素:特性和行为 => 同一类事物具有相同的特征和行为. [2] 类是一个群体性概念.例如:网 ...

  2. java中的对象 方法 引用 等一些抽象的概念是什么意思呢?

    2020-03-14 最近这一段时间有点忙,好久都没有更新博客了,之后我会一直坚持下去的,和大家一同进步的. 这段时间一直在学java,相信刚开始学习java的小白,刚开始接触那么些抽象的概念一定和我 ...

  3. 黑马程序员——JAVA基础之抽象和接口 , 模版方法设计模式

    ------- android培训.java培训.期待与您交流! ---------- 抽象定义:           抽象就是从多个事物中将共性的,本质的内容抽取出来.           例如:狼 ...

  4. 理解Java中的抽象

    在计算机科学中,抽象是一种过程,在这个过程中,数据和程序定义的形式与代表的内涵语言相似,同时隐藏了实现细节. 抽象:一个概念或者想法不和任何特定的具体实例绑死. 目录 什么是抽象 抽象的形式 如何在J ...

  5. Java 继承、抽象、接口

    一.继承 1. 概述 继承是面向对象的重要特征之一,当多个类中存在相同的属性和行为时,将这些内容抽取到单独一个类中,那多个类中无需再定义这些属性和行为,只需继承那个单独的类即可. 单独的类称为父类或超 ...

  6. Java:类与对象概念

      什么是类? 怎样定义一个类? 什么是对象,类和对象之间是什么关系,怎样创建一个对象? 对象引用和对象在内存中是如何分配的? 什么是类? 1. 类是具有相同的属性和功能的事物的抽象的集合,在面向对象 ...

  7. java多线程编程01---------基本概念

    一. java多线程编程基本概念--------基本概念 java多线程可以说是java基础中相对较难的部分,尤其是对于小白,次一系列文章的将会对多线程编程及其原理进行介绍,希望对正在多线程中碰壁的小 ...

  8. java面向对象1-面向对象概念

    面向对象概念-类与对象的关系 封装:指隐藏对象的属性和实现细节,仅对外提供公共访问方式,private-构造方法/构造器-this关键字-static关键字(javadoc制作工具类) -代码块 继承 ...

  9. Java学习笔记-抽象

    开发软件的关键在于应用抽象的概念.方法抽象是通过将方法的使用和它的实现分离来实现的.方法的实现对用户隐藏在"黑匣子"中. 当编写一个大程序时,可以使用分治的策略,也成为逐步求精,将 ...

  10. Java SE/ME/EE的概念介绍

    转自 Java SE/ME/EE的概念介绍 多数编程语言都有预选编译好的类库以支持各种特定的功能,在Java中,类库以包(package)的形式提供,不同版本的Java提供不同的包,以面向特定的应用. ...

随机推荐

  1. 关于beforeRouteEnter中的next()

    beforeRouteEnter(to,from, next){ console.log(this)   //undefined next(vm => { console.log(vm)}) } ...

  2. Java多线程并发07——锁在Java中的实现

    上一篇文章中,我们已经介绍过了各种锁,让各位对锁有了一定的了解.接下来将为各位介绍锁在Java中的实现.关注我的公众号「Java面典」了解更多 Java 相关知识点. 在 Java 中主要通过使用sy ...

  3. Golang三种方式实现超时退出

    问题 前段时间发现线上有个服务接口,总是间歇性告警,有时候一天两三次,有时候一天都没有. 告警的逻辑是在一个接口中异步调用了另一个HTTP接口,这个HTTP接口调用出现超时.但是我去问了负责这个HTT ...

  4. Kubernetes中Pod健康检查

    目录 1.何为健康检查 2.探针分类 2.1.LivenessProbe探针(存活性探测) 2.2.ReadinessProbe探针(就绪型探测) 3.探针实现方法 3.1.Container Exe ...

  5. 快速理解编码,unicode与utf-8

    1.为什么编码,因为cpu只认识数字2.ASCII 一个字符共占7位,用一个字节表示,共128个字符3.那么ASCII浪费了最高位多可惜,出现了ISO-8859-1,一个字节,256个字符,很多协议的 ...

  6. Jocke的IOT之路--raspberrypi更换国内镜像

    一.编辑sources.list文件 sudo nano /etc/apt/sources.list 使用#将文件内容全部注释调,更改位 deb http://mirrors.tuna.tsinghu ...

  7. Python第五章-内置数据结构01-字符串

    Python 内置的数据结构 ​ 到目前为止,我们如果想保存一些数据,只能通过变量.但是如果遇到较多的数据要保存,这个时候时候用变量就变的不太现实. ​ 我们需要能够保存大量数据的类似变量的东东,这种 ...

  8. 干货 | 近期热点机器学习git项目

    No1:PyTorchImplementation of DeepMind's BigGAN(https://github.com/huggingface/pytorch-pretrained-Big ...

  9. coding++:JS/jQuery获取兄弟姐妹等元素

    jQuery获取: jQuery.parent(expr),找父亲节点,可以传入expr进行过滤,比如$("span").parent()或者$("span") ...

  10. CI / CD /CD 持续集成 持续交付 持续部署

    CI / CD /CD 持续集成 持续交付 持续部署 CI CD 是啥?干了啥? CI continuous integration 持续集成 CD continuous delivery 持续交付 ...