抽象类是不能产生独享实例。定义抽象类需要abstract关键字
语法是
absrtact class 类名{
类体
}抽象类的抽象方法语法
abstract 方法返回值类型 方法名(参数列表)
抽象方法没有方法体,直接以分号结尾
抽象类除了被继承,没有其他意义
抽象方法只能被子类重写。
抽象类想要创建实例,只能依靠继承的子类,使用子类对象创建抽象类对象
代码如下
abstract class Shangchang{
public String name;
public String goods;
public abstract void shop();
}
class Taobao extends Shangchang{
public void shop()
{
System.out.println(name+"网购"+goods);
}
}
class Wallmarket extends Shangchang{
public void shop()
{
System.out.println(name+"实体店购买"+goods);
}
}
public class Chouxiang {
public static void main(String[] args) {
// TODO Auto-generated method stub
Shangchang market = new Taobao();
market.name = "沃尔玛";
market.goods="七匹狼西服";
market.shop();
Shangchang tianmao = new Wallmarket();
tianmao.name="天猫";
tianmao.goods="平板电脑";
tianmao.shop();
}
}
上面代码中,Shangchang是抽象类,它的属性和方法被Wallmarket类和Taobao继承,方法都被重写了。
抽象类创立实例对象,需要通过子类创建