java--接口

以下是我对接口的理解,希望可以帮助你更深的理解接口和运用接口:

基本介绍:接口就是给出一些没有实现的方法,到某个类型要使用的时候,再使用这些方法,接口中的方法为抽象方法(如果对抽象方法不太理解的话,可以看抽象类分析的那一节),在jdk8.0后接口可以有静态方法,默认方法

语法:

package Test;

public interface IE {
    //属性名
    //抽象放法
}
class IC implements IE{
    //自己属性
    //自己方法
    //必须实现接口方法
} 

接口的多态特性:

1.多态参数

举例:

package Test;

public class Test5 {
    public static void main(String[] args) {
        kk kk = new kk();
        uu uu = new uu();
        Ts ts = new Ts();
        ts.td(kk);
        ts.td(uu);
    }
}
interface hh{
    void pT();
}
class kk implements hh{
    @Override
    public void pT() {
        System.out.println("kk实现接口");
    }
}
class uu implements hh{

    @Override
    public void pT() {
        System.out.println("uu实现接口");
    }
}
class Ts{


    public void td(hh s) {
        s.pT();
    }
}

2.多态数组

举例:

package Test;

public class Test5 {
    public static void main(String[] args) {
        kk kk = new kk();
        uu uu = new uu();
        Ts ts = new Ts();
        hh[] hhp = new hh[2];
        hhp[0]=kk;
        hhp[1]=uu;
        for (int i = 0; i < hhp.length; i++) {
            hhp[i].pT();
        }
    }
}
interface hh{
    void pT();
}
class kk implements hh{
    @Override
    public void pT() {
        System.out.println("kk实现接口");
    }
}
class uu implements hh{

    @Override
    public void pT() {
        System.out.println("uu实现接口");
    }
}
class Ts{


    public void td(hh s) {
        s.pT();
    }
}

3.多态传递现象

注意事项和细节:

1.接口不能被实例化(接口属于抽象类,根据抽象类可以解释为什么接口不能被实例化)

2.接口中所有的方法是public方法,并且接口中抽象方法可以不用abstract修饰

3.如果一个类实现接口,必须把该接口的所有接口都实现

4.抽象类实现接口可以不用实现接口的方法(因为接口本身就是抽象类)

5.一个类可以实现多个接口

举例:

package Test;

public class Test5 {
    public static void main(String[] args) {
        
    }
}
interface hh{ }
interface nn{}
class mm implements  hh,nn{}

6.接口中的属性是被 public static final 修饰的(如果对final不太理解可以跳转final关键字

7.接口中的访问形式:接口.属性名   (因为接口中的属性是静态的,不用new一个对象就可以使用)

8.接口不能继承其他类,但是可以继承多个接口

9.接口中类的修饰符只能是public 和默认的,和普通类的修饰符一样

对实例化接口和继承类做一个比较:

1.继承的价值在于解决代码的复用性和维护性吗,接口的价值在于设计好各中方法,让其他类进行使用

2.接口比继承更加的灵活

3.接口在一定程度上实现了代码的解耦(接口规范性+动态绑定机制)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值