java抽象类和抽象方法(abstract)

2018-11-26  本文已影响8人  SnailLi

抽象(abstract):
当父类的某些方法不确定时,可以用abstract关键字来修饰该方法[抽象方法],用abstract来修饰该类[抽象类]。我们都知道,父类是将子类所共同拥有的属性和方法进行抽取,这些属性和方法中,有的是已经明确实现了的,有的还无法确定,那么我们就可以将其定义成抽象,在后日子类进行重用,进行具体化。这样,抽象类也就诞生了。例如:定义了“Pet”父类,其中“Pet”类名下有color(颜色)、name(名字)、age(年龄)、health(健康值)等属性,但是动物play(玩耍)的方式没有明确,此时就可以将动物play(玩耍)定义成抽象方法。所以,抽象类是为了把相同的但不确定的东西的提取出来,为了以后的重用。定义成抽象类的目的,就是为了在子类中实现抽象类。

抽象类的定义
关键字:abstract

package com.sl.abstractClass.biz;
/**
  * 抽象类
  * 关键字:abstract
  * 抽象类的类内既可以有抽象方法,也可以有非抽象方法
  * 抽象类可以继承抽象类(抽象类的子类也可以是抽象类)
 * */
public abstract class Pet {

private String color;
private String name;
private double age;
private int health;

}

抽象方法

 /**
 * 抽象方法
 * ------------给面向接口编程做准备
 * 1、必须写在抽象类里面
 * 2、抽象方法不能有实现体
 */
public abstract void play ();

子类必须强制实现父类的抽象方法

package com.sl.abstractClass.biz;

public class Dog extends Pet {
/**
 * 强制子类必须实现父类的抽象方法
 * (除非子类自身也是抽象类)
 *
 * */
@Override
public void play() {

}
}
上一篇 下一篇

猜你喜欢

热点阅读