Java--抽象类

所谓抽象类就是只声明方法的存在而不去具体实现它的类。抽象类不能被实例化,也就是不能创建其对象。在定义抽象类时,要在class关键字前面加上abstract关键字。定义抽象类,语法格式如下:

abstract class 类名 {

类体

}

定义一个名称为Fruit的抽象类:

public abstract class Fruit { //定义抽象类

public String color;    //定义颜色成员变量

//定义构造方法

public Fruit() {

color = "绿色";    //对变量color进行初始化

}

}

在抽象类中创建的,没有实际意义的,必须要子类重写的方法称为抽象方法。抽象方法只有方法的声明,而没有方法的实现,用abstract关键字进行修饰。声明一个抽象方法的基本格式如下:

abstract <方法返回值类型> 方法名(参数列表);

在Fruit抽象类中定义一个抽象方法

public abstract class Fruit { //定义抽象类

public String color;    //定义颜色成员变量

//定义构造方法

public Fruit() {

color = "绿色";    //对变量color进行初始化

}

//定义抽象方法

public abstract void harvest();  //收获的方法

}


1.创建Fruit类的子类Apple,并实现harvest()方法,代码如下:

public class Apple extends Fruit {

@Override

public void harvest() {

System.out.println("苹果已经收获");

}

}

2.创建Fruit的子类Orange,并实现harvest()方法,代码如下:

public class Orange extends Fruit {

@Override

public void harvest() {

System.out.println("桔子已经收获");

}

}


3.创建一个包含main()方法的公共类Farm,在该类中执行Fruit类中的两个子类的harvest()方法:

public class Farm {

public static void main(String[] args) {

// TODO Auto-generated method stub

Apple apple = new Apple();

apple.harvest();

Orange orange = new Orange();

orange.harvest();

}

}


执行结果:

苹果已经收获

桔子已经收获

你可能感兴趣的:(Java--抽象类)