Java继承和接口

一   抽象类

1:抽象方法只能定义在抽象类中,抽象类和抽象方法必须由abstract关键字修饰(可以描述类和方法,不可以描述变量)。
2:抽象方法只定义方法声明,并不定义方法实现。
3:抽象类不可以被创建对象(实例化)。
4:只有通过子类继承抽象类并覆盖了抽象类中的所有抽象方法后,该子类才可以实例化。否则,该子类还是一个抽象类。

  抽象类中可以定义非抽象方法,抽象类中有构造函数,用于子类对象初始化。

abstract不可以与final,private,static共存。

抽象类中可以不定义抽象方法。


模板方法设计模式:

解决的问题是:当功能内部一部分实现时确定,一部分实现时不确定,这些需要把不确定的部分让子类去实现。



abstract class GetTime{

    public final void getTime(){ //此功能如果不需要复写,可加final限定,功能确定的部分。

..............................

    }

    public abstract void code(); //抽象不确定的功能,让子类复写实现

}

class SubDemo extends GetTime{

    public void code(){ //子类复写功能方法

        .........................................

    }

}

二,interface不可以实例化,接口中子类实现接口中所有抽象方法后,才可以实例化。

成员变量:public static final

成员方法:public abstract

interface Inter{

 public static final int x=3;

public abstract void show();

}

实现用implements ;




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值