Java接口

前言

简单了解Java的接口

一、抽象类

有规范、有实现。

abstract class A{
    int a;
    abstract void get();
    public void method(){
        System.out.println("method");
    }
}
class B extends A{

    @Override
    void get() {
        System.out.println("实现get方法");
    }
}

二、接口

接口是纯规范,但JDK8增加了默认方法和静态方法。

1、接口

interface C{
    public static final int a = 1;//接口的变量都是public static final的
    public abstract void method();//接口的方法规范都是public abstract 的
}

2、默认方法

interface C{
    public static final int a = 1;//接口的变量都是public static final的
    public abstract void method();//接口的方法规范都是public abstract 的
    default void moren(){
        System.out.println("接口默认方法实现");
    }
    
}

该默认方法属于对象,如果实现该接口的类,可以重写该方法。

3、静态方法

interface C{
    public static final int a = 1;//接口的变量都是public static final的
    public abstract void method();//接口的方法规范都是public abstract 的
    default void moren(){
        System.out.println("接口默认方法实现");
    }
    public static void staticMethod(){
        System.out.println("属于类方法,已实现,属于接口C,类方法不能重写");
    }
}
class D implements C{

    @Override
    public void method() {
        System.out.println("实现method方法");
    }

    @Override
    public void moren() {
        System.out.println("重写moren方法");
    }
    public static void staticMethod(){
        System.out.println("属于类方法,已实现,属于类D。");
    }

    public static void main(String[] args) {
        C c = new D();
        c.moren();
        C.staticMethod();
        D.staticMethod();
    }
}

在这里插入图片描述

3、接口多继承

接口不复杂,可以多继承。

interface C{
    public static final int a = 1;//接口的变量都是public static final的
    public abstract void method();//接口的方法规范都是public abstract 的
    default void moren(){
        System.out.println("接口默认方法实现");
    }
    public static void staticMethod(){
        System.out.println("属于类方法,已实现,属于接口C,类方法不能重写");
    }
}
interface E {
    public abstract void fun();
}
interface F extends C,E{
    
}

参考文献

[1] Java SE 高淇

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值