Java的接口、继承

Java只支持单重继承,即一个类只能有一个父类。Java提供了接口来实现类的多重继承功能。

接口的定义

----和类文件一样,接口文件的文件名必须与接口名相同

[访问权限修饰符] interface 接口名 [extends 父接口列表] {

    [public] [static] [final] 变量;

    [public] [abstract] 方法; ----方法只有定义而没有实现

}

例如:

public interface ICalculate{
    final float PI = 3.14159f;
    float getArea(float r);
    float getCircumference(float r);
}

接口的实现

[访问权限修饰符] class 类名[extends 父类名] [implements 接口列表] {  ----多个接口间用“,”分隔

----修饰符可选:public、abstract和final

----多个接口如出现变量名冲突,则可用“接口名.变量名”解决。出现方法冲突则只要实现一个。

}

例如:

public class Cire implements ICalculate{
    public float getArea(float r) {
        //函数体
    }
    public float getCircumference(float r) {
        //函数体
    }
}
在类中实现接口时,方法名、返回值类型等必须与接口中的一样。


类的继承

[修饰符] class 子类名 extends 父类名 {

    类体

}


重写(覆盖)

可以使一个方法在不同的子类中表现出不同的行为


super

    子类可以继承父类的非私有成员变量和成员方法。但是如果子类中声明的变量与父类中的变量同名,或子类的方法重写了父类的方法。则此时子类不能继承父类的该成员变量或成员方法。如果想在子类中访问父类中被子类隐藏的成员变量或成员方法,就可以使用super关键字。

作用1:调用父类的构造方法

super( [参数列表] );

例如:

public class Beast {
    String skin = " ";
    public Beast(String str) {
        skin = str;
    }
}

public class Tiger extends Beast {
    public Tiger() {
        super("条纹");//调用Beast的构造方法
    }
}
作用2:操作被隐藏的成员变量和成员方法

super.成员变量

super.成员方法( [参数] )















  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值