首页 > 编程语言 > 详细

浅谈java抽象

时间:2020-03-22 20:31:58      阅读:49      评论:0      收藏:0      [点我收藏+]

一、什么是抽象类?为什么要使用抽象类?

首先要明确,抽象类也是类,只是抽象类具备了一些特殊的性质。

我们以前编写一个类时,会为这个类编写具体的属性和方法,但有一些情况我们只知道一个类需要哪些属性方法,但不知道这些方法具体是什么,这时我们就要用到抽象类。

举个例子,有一位老师布置了一篇作文,要求以春天为题目写一篇字数不少于800字的写景作文。在这个例子中,这篇作文就是一个抽象类,这个抽象类有两个抽象属性:以春天为题目和字数不少于800,还有一个抽象方法:写景。现在全班学生就会按照老师所给的要求,即抽象类,去完成作业。抽象类就像一个大纲一样规范了一个项目。

抽象类作为系统中多个子类的共同父类,它所体现的是一种模板式设计。

二、抽象的定义格式

  • 抽象方法的定义格式:public abstract 返回值类型 方法名(参数);
  • 抽象类的定义格式:abstract class 类名{}

示例:

 1 //抽象类
 2 abstract class Animal {
 3     abstract public void shout();  //是一个抽象方法,他根本没有方法体,即方法定义后面没有一对花括号
 4 }
 5 class Dog extends Animal { 
 6     //子类必须实现父类的抽象方法,否则编译错误
 7     public void shout() {
 8         System.out.println("汪汪汪!");
 9     }
10     public void seeDoor(){
11         System.out.println("看门中....");
12     }
13 }
14 //测试抽象类
15 public class TestAbstractClass {
16     public static void main(String[] args) {
17         Dog a = new Dog();
18         a.shout();
19         a.seeDoor();
20     }
21 }

结果:

技术分享图片

 

 

三、抽象类的使用要点:

     1. 有抽象方法的类只能定义成抽象类

     2. 抽象类不能实例化,即不能用new来实例化抽象类。

     3. 抽象类可以包含属性、方法、构造方法。但是构造方法不能用来new实例,只能用来被子类调用。

     4. 抽象类只能用来被继承。

     5. 抽象方法必须被子类实现。

浅谈java抽象

原文:https://www.cnblogs.com/qiaoxin11/p/12547962.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!