Java学习笔记 接口

package cn.itcast.demo01;
/*public abstract 返回值类型 方法名称(参数);
 固定关键字
* */
public interface MyInterfaceAbstract {
    //这是一个抽象方法
    public abstract void methodAbs1();
}

package cn.itcast.demo01;

public class MyInterfaceAbstractImpl implements MyInterfaceAbstract {

    @Override
    public void methodAbs1() {
        System.out.println("这是一个方法~");
    }
}

package cn.itcast.demo01;
/*接口是多个类的公共规范
* 接口是引用数据类型
* 最重要的内容是抽象方法
* public interface 接口名称(大驼峰){
*       //内容
*       可包含内容为
*       1 常量
*       2 抽象方法
*       3 默认方法
*       4 静态方法
*       5 私有方法
* }
*接口使用步骤
* 1.不能直接使用,必须有一个实现类来实现接口    public class 实现类名称 implements 接口{
* }
* 2.接口的实现类必须重写覆盖接口中的所有抽象方法
* 3.创建实现类的对象进行使用
*  */
public class Demo01Interface {
    public static void main(String[] args) {
        //创建实现类的对象
        MyInterfaceAbstract impl = new MyInterfaceAbstractImpl();
        impl.methodAbs1();
    }


}

静态方法

package cn.itcast.demo01;
/*静态方法的定义*/
public interface MyinterfaceStatic {
    public static void methodStatic(){
        System.out.println("这是静态方法");
    }
}
package cn.itcast.demo01;
/*通过接口名称直接调用其中的静态方法*/
public class Demo02Interface {
    public static void main(String[] args) {
        MyInterfaceStaticImpl impl = new MyInterfaceStaticImpl();//含默认静态方法
        //错误写法
        //impl.methodStatic();
        //直接通过接口名称调用静态方法
        MyinterfaceStatic.methodStatic();
    }
}

package cn.itcast.demo02;
/*一个类的直接父类是唯一的,但是一个类可以实现多个接口
若实现类所实现的多个接口中存在重复的抽象方法,只需覆盖重写一次即可
若实现类没用覆盖重写所有接口中的所有抽象方法,则实现类必须是抽象类
* */
public class Demo01Interface {

}

package cn.itcast.demo02;

public interface MyInterface2 {
    public abstract void methodA();
    public abstract void methodAbs();
}

}


package cn.itcast.demo02;

public interface MyInterface1 {
    public abstract void methodB();
    public abstract void methodAbs();
}


package cn.itcast.demo02;

public class MyInterfaceImpl implements MyInterface1,MyInterface2 {
    @Override
    public void methodB() {
        System.out.println("覆盖重写A方法");
    }
    //覆盖重写一次即可
    @Override
    public void methodAbs() {
        System.out.println("覆盖重写了AB接口都有的抽象方法");
    }

    //实现不同的接口
    @Override
    public void methodA() {
        System.out.println("覆盖重写B方法");
    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值