抽象类abstract class 和接口interface

抽象类abstract class 和接口interface

**一:**抽象类
1:抽象类的特点
特点1:
可以有已经实现的方法,也可以有抽象方法,子类继承的时候,如果子类不是抽象类,一定要重写父类的抽象方法

public abstract class Father {//父类
    String name;
    public String getName() {
        return name;
    }//实现了的方法

    abstract void setName(String name);//抽象方法
}
public  class Child extends Father{

    @Override
    void setName(String name) {

    }//一定要重写,除非子类也是抽象类

}

二:接口
特点1:接口也可以有属性,但一定要初始化
特点2:方法只能是抽象方法,abstract关键字可以省略

public interface Jiekou1 {
    int id = 0;

    String getId();

    void setId(int id);
}

特点3:类继承接口或者叫做实现接口 用implements关键字,一定要重写接口方法,除非这个类是抽象类

public class Child implements Jiekou1{

    @Override
    public String getId() {
        return null;
    }

    @Override
    public void setId(int id) {

    }
}
public abstract class Father implements Jiekou1 {

}//.抽象类实现接口不强求重写方法

特点4: 一个类可以实现多个接口,用","分割

public abstract class Father implements Jiekou1,Jiekou2 {

}

特点四:抽象类继承接口但是没有重写接口方法,将来会让子类重写接口方法

public class Child extends Father{

    @Override
    public String getId() {
        return null;
    }

    @Override
    public void setId(int id) {

    }//这些方法来自于接口
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值