*abstract(抽象)

abstract(抽象)修饰符,可以修饰类和方法
1,abstract修饰类,会使这个类成为一个抽象类,这个类将不能生成对象实例,但可以做为对象变量声明的类型,也就是编译时类型,抽象类就像当于
一类的半成品,需要子类继承并覆盖其中的抽象方法。
2,abstract修饰方法,会使这个方法变成抽象方法,也就是只有声明(定义)而没有实现,实现部分以";"代替。需要子类继承实现(覆盖)。
注意:有抽象方法的类一定是抽象类。但是抽象类中不一定都是抽象方法,也可以全是具体方法。
abstract修饰符在修饰类时必须放在类名前。
abstract修饰方法就是要求其子类覆盖(实现)这个方法。调用时可以以多态方式调用子类覆盖(实现)后的方法,也就是说抽象方法必须在其子类中实
现,除非子类本身也是抽象类。
注意:父类是抽象类,其中有抽象方法,那么子类继承父类,并把父类中的所有抽象方法都实现(覆盖)了,子类才有创建对象的实例的能力,否则子类
也必须是抽象类。抽象类中可以有构造方法,是子类在构造子类对象时需要调用的父类(抽象类)的构造方法。
举个简单的例子下面有一个抽象类
abstract class E{
public abstract void show();//public abstract 可以省略
}
然后其它类如果继承它通常为了实现它里面的方法
class F extends E{
void show(){
//写具体实现的代码
}阿
}
最后再主方法里面定义一个父类引用指向子类对象,就会发生多态现象,比如
E e=new F();
e.show();
实际调用了子类里面的show()方法

abstract(抽象)的定义和使用相关推荐

  1. Abstract(抽象) implement和extend

    1.Abstract(抽象)可以修饰类.方法 如果将一个类设置为abstract,则此类必须被继承使用.此类不可生成对象,必须被继承使用. Abstract可以将子类的共性最大限度的抽取出来,放在父类 ...

  2. 线性表的定义与特点及抽象数据类型定义

    一.线性表的定义 由n(n>=0)个数据特性相同的元素构成的有限序列称为线性表. 线性表中元素的个数n(n>=0)定义为线性表的长度,n=0时线性表称为空表. 二.非空线性表及线性结构的特 ...

  3. 线性表抽象数据类型定义与顺序表操作

    作业3-线性表抽象数据类型定义与顺序表操作 1-1 对于顺序存储的长度为N的线性表, 访问结点和增加结点的时间复杂度 分别对应为O(1)和O(N).(T) [解析]增加结点,不同位置复杂度不同,但平均 ...

  4. java关键字abstract(抽象)详解

    说到抽象,想必大家第一个联想到的就是抽象画,基本上看不懂画的是啥,只能说它在表达某个概念. 在java中我们中abstract关键字来表达抽象.举个例子: 我们说车子都可以跑(run).但有几个轮子, ...

  5. 25 abstract 抽象

    1.首先我们引出抽象,在我们过去写一个父类和写一个子类的时候,要进行子类对父类方法的重写,那么父类原来的实体方法中的方法体中的内容就没有了意义,因为方法重写后执行的是子类重写后的方法.所有我们想要将父 ...

  6. Java面向对象(五)abstract --- 抽象

    当多个子类中有名称一致当但是细节不同的行为时 , 将 这个行为向上提取到父类中,提取时 , 只提取方法定义,  不提取方法主体 , 这个方法叫抽象方法,抽象方法所在的类也必须是抽象类. 抽象方法和抽象 ...

  7. Spring 用注解Annotation注入 abstract 抽象父类的属性

    问题: 希望把子类公共的属性放在抽象类中.运行时,希望在Spring 扫描@Component注解,自动加载子类的同时,自动注入抽象父类的属性. 抽象父类: @Component public abs ...

  8. Java抽象类(abstract)的定义和设计模式(模板设计模式)

    1.抽象类 package com.itstudy.bean;//抽象类/*** 抽象类:描述的内容不是具体的内容* 1.有abstract修改,并且有抽象方法* 2.一共类中有抽象方法,那么这个类一 ...

  9. 线性表adt的c语言表达,抽象数据类型定义(ADT)

    类C语言语法示例 1.预定义常量和类型 #define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define INFEASIBLE - ...

  10. 栈的抽象数据类型定义

    栈Stack: 数据对象:栈和线性表一样,包含n个数据元素,这n个数据元素是同样性质的,元素的个数可以等于0,此时栈为空栈. 数据关系:还是前驱和后继的关系,ai-1是ai的前驱,ai是ai-1的后继 ...

最新文章

  1. css清除浮动的处理方法
  2. LeetCode题组:第7题-整数反转
  3. django 获取环境变量_Django 安装和配置环境变量
  4. 存根类 测试代码 java_常规单元测试和存根–测​​试技术4
  5. 10.3 考试 (考得不好)
  6. openvas 配置遇到的问题
  7. 如何简单快速的修改Bootstrap
  8. linux 后台启动
  9. 7.数据结构 --- 图
  10. CSDN博文分类全部删除了?
  11. AI智能双标题插件+内容伪原创插件集成
  12. 申请亚马逊AWS一年免费服务器
  13. day8--socket回顾
  14. PyCharm输入法无法切换中英文
  15. office服务器草稿位置,精确定位图片在Word文档中的位置的操作方法
  16. 照片变漫画的方法有哪些?推荐两个方法给你
  17. 2021年建筑架子工(建筑特殊工种)考试题库及建筑架子工(建筑特殊工种)模拟试题
  18. maya2018arnold renderview保存图片渲染色彩空间偏差问题
  19. 动手的乐趣_1969功率放大器
  20. tbr tbn tbc 的意思

热门文章

  1. 【C++从青铜到王者】第一篇:C++入门
  2. first diary
  3. 无人机从零到一(组装、校准到起飞)
  4. 一场关于开源芯片生态之语言与工具链的讨论
  5. 肯耐珂萨2019用户生态峰会 开启HR Paas时代
  6. 洛谷 P3906 Geodetic集合 题解
  7. python gps模块_树莓派连接GPS模块
  8. uni-app入门教程(7)第三方登录和分享
  9. 工作5年的阿里Java程序员分享从业心得总结,写给还在迷茫的朋友
  10. 蓝牙室内定位UWB多技术融合趋势