`

9、抽象类

阅读更多

一、抽象类(abstract

 

    当多个类中出现相同功能,但是功能主体不同,这时可以进行向上抽取,只抽取功能定义,而不抽取功能主体

 

二、抽象方法所在类一定要标示为抽象类,也就是说该类需要被abstract关键字所修饰

 

三、abstract可以修饰类和方法不能修饰变量

 

四、抽象类特点

 

  1. 抽象方法一定在抽象类中
  2. 抽象方法和抽象类都被abstract修饰
  3. 抽象类不能new对象,因为调用抽象方法没有意义
  4. 抽象类中的方法要被使用,必须由子类覆盖其所有的抽象方法后,建立子类对象调用。
  5. 如果子类只覆盖了部分抽象方法,那么该子类还是一个抽象类(即强迫子类重写)
abstract class Student
 {
	 abstract void study();
 }
 class BaseStudent extends Student
 {
	 void study()
	 {
		System.out.println("base study");
	 }
 }
 class AdvStudent extends Student
 {
	 void study()
	 {
		System.out.println("adv study");
	 }
 }

 

五、抽象类和一般类

 

  1. 两者没有太大的不同,该如何描述事物,就如何描述事物。
  2. 只不过,该事物出现了一些看不懂的东西,这些不确定的部分,也是该事物的功能,需要明确出现,但是无法定义主体,那么就通过抽象方法来表示
  3. 抽象类不能实例化

六、抽象关键字abstract和哪些不可以共存?

 

    final,private,static

 

七、如果抽象类中有主函数,那是可以执行的,并且,非抽象方法可以调用抽象方法

import java.io.*;
abstract class Demo 
{
	public static void main(String[] args) throws Exception
	{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String line = br.readLine();
		System.out.println("<"+line+">");
	}
	abstract void show();
	void print()
	{
		System.out.println("你好");
		show();
	}
}
class D extends Demo
{
	public void show()
	{
		System.out.println("run show");
	}
	public static void main(String[] args) throws Exception
	{
		D d = new D();
		d.print();
	}
}

 

分享到:
评论

相关推荐

    Java程序设计课程实验9-继承和抽象类

    Java程序设计课程实验9-继承和抽象类Java程序设计课程实验9-继承和抽象类Java程序设计课程实验9-继承和抽象类Java程序设计课程实验9-继承和抽象类Java程序设计课程实验9-继承和抽象类Java程序设计课程实验9-继承和...

    Java继承_抽象类与接口的应用.

    1.继承及继承实例 2.方法重写(Overwrite) 3.super关键字 4.方法重载(Overload) 5.final修饰符 6.abstract修饰符 7.抽象类 8.接口 9.接口和抽象类对比 10.接口和抽象类使用场合实例 11.总结

    C#接口抽象类区别实例

    c#中抽象类和接口。 相同点: (1) 都可以被继承 (2) 都不能被实例化 (3) 都可以包含方法声明 ...(9) 如果抽象类实现接口,则可以把接口中方法映射到抽象类中作为抽象方法而不必实现,而在抽象类的子类中实现接口中方法

    面向对象程序设计与实践-Java抽象类和接口[33页].pptx

    面向对象程序设计与实践-Java抽象类和接口[33页]全文共33页,当前为第9页。 5-1案例分析 交流与讨论 结合案例分析,思考一下几个问题: 开发人员——静态属性为姓名、工号、薪水,动态行为为工作 项目经理——静态...

    Java基础精品课12-抽象类录屏9.愚公移山案例.mp4

    Java基础精品课12-抽象类录屏9.愚公移山案例.mp4

    实验9 多态:抽象类1

    将所选框架保存在一个动态数组中(课本第 9 章 9.2.2 小节中介绍的直接访问群体——数组类,Array.h 的源代码在网盘上)。在此过程中,使用插入排序算法

    JAVA实验报告心得.doc

    实验 9 抽象类、接口练习实验目的:综合运用接口,类的知识。心得体会:在该实验中,我掌握了接口定义,以及类实现接口。接口用 interface 关键字定义,在接口中,可以用 abstract 修饰方法的,也可以去掉 abstract ...

    09.【继承、super、this、抽象类】.zip

    java9.【继承、super、this、抽象类】.zip

    跟汤老师学Java(第9季):抽象类和接口

    本课程从零开始,以通俗易懂的方式讲解Java入门,手把手教你掌握每一个知识点,真正做到零基础入门学习,最适合初学者的教程!...抽象类3.练习:租车系统4.接口简介5.接口的特性6.接口的作用7.接口和抽象类的比较

    C++程序设计基础教程 苏大C++程序设计教程(第二版) 第13章 抽象类(共2页).pptx

    【C++程序设计教程 第二版】完整课程列表如下: C++程序设计教程 第1_2_3_4章 C++基础 数据...C++程序设计教程 第13章 抽象类(共2页) C++程序设计教程 第14章 模板(共32页) C++程序设计教程 第15章 异常(共5页)

    java 编程基础题

    1 9 36 84 126 126 84 36 9 1 GradeDemo类中的checkAnswer方法实现不定项选择判分,具体要求如下: 1) 考生答案和正确答案相同(不考虑选项顺序),得5分。 2) 考生答案不全,得2分。 3) 考生答案中有错误答案...

    delphi部件开发

    4.3.8 TScrofingWinControl抽象类 4.3.9 TCustomEdit抽象类 4.3.10 TButtonControl抽象类 4.3.1 TCustomControl抽象类 4.4 窗口控件扩展开发实例分析 4.4.1 TCustomPanel抽象类 4.4.2 TAIPanel控件开发 第五章 开发...

    抽象工厂模式(Abstract Factory Pattern)

    在初始化的时候会用到一次具体工厂类名,我们根据.NET特有的反射机制又可以把这个在客户端唯一的具体的非抽象类放到一个应用程序配置文件中,防止它变化。 这就符合了设计模式中的“开放--封闭”原则,依赖倒转原则...

    实验四类的继承与多态实验.doc

    实验四 类的继承与多态实验1.理解软件重用性的一种形式——继承。 2.能够通过继承已有的类创建新类。 3.理解基类和派生类的概念。 4.能够在派生类中使用构造函数和析构...9.掌握用抽象类和多态性实现编程的方法。

    Java实验5.doc

    本文档总结了 Java 实验 5 的实验报告,涵盖了面向对象程序设计中的抽象类和接口的概念。实验报告包括四个部分:第一部分是练习返回值与形参为引用类型的方法的定义;第二部分是在线测试的章节测试;第三部分是定义...

    java接口与内部类教学PPT

    接口-与抽象类之区别 6.接口-应用示例(设计模式) 7.内部类-简介 8.内部类-作用 9.内部类-特殊语法规则 10.内部类-安全性 11.内部类-局部内部类 12.内部类-匿名内部类 13.内部类-...

    java 新手小白的入门课

    初级Java JavaSE题库 初始JAVA.zip 998.4MB ...抽象类和接口.zip 1017.9MB 集合1.zip 2.1GB 集合1+.zip 569.8MB 常用类2.zip 1.3GB 集合2.zip 1.3GB IO流.zip 1.7GB 多态和抽象类.zip 1.2GB

    观看韩顺平学习整理java的笔记到异常

    抽象类--模板设计模式 9 接口 9 内部类 11 匿名内部类的使用(重要!!!!!!!) 13 成员内部类的使用 13 静态内部类的使用 14 枚举的二种实现方式 14 自定义类实现枚举 14 使用 enum 关键字实现枚举注意事项 15 enum 用...

    抽象代数 [王颖,南基洙 编著] 2013年版

    《高等学校教材:抽象代数》可作为高等学校数学类专业本科高年级学生及研究生的教材,也可作为相关技术人员的参考用书。 目录 第一章 预备知识 第1节 集合与映射 第2节 置换集合S 第3节 等价关系与分类 第4节 代数...

    一类具抽象边界的迁移算子本质谱

    为得到迁移算子的本质谱的分布情况,在1L空间研究板几何中具抽象边界条件各向异性、连续能量的迁移方程解的渐近性态.采用算子理论和比较算子等方法,在边界算子是部分光滑和扰动算子是正则的条件下,证明了该迁移算子H ...

Global site tag (gtag.js) - Google Analytics