Java高级Day7-接口

21.接口基本介绍

基本介绍

接口就是给出一些没有实现的方法,封装到一起,到某个类要使用的时候,再根据具体情况把这些方法写出来

代码:

写一个接口类UsbInterface

//接口
public interface UsbInterface {
    //规定接口的相关方法
    public void strat();
    public void stop();
}

写一个设备手机Phone

//Phone类实现UsbInterface
//即Phone需要实现UsbInterface接口 规定/声明的方法
public class Phone implements UsbInterface{
    @Override
    public void strat() {
        System.out.println("手机开始工作...");
    }
​
    @Override
    public void stop() {
        System.out.println("手机停止工作...");
    }
}

写一个接收设备电脑Computer

public class Computer {
    public static void main(String[] args) {
        //创建手机对象
        Phone phone = new Phone();
        //创建计算机
        Computer computer = new Computer();
        computer.work(phone);//把啊手机接入到计算机
    }
}

应用场景

例如:有一个项目经理,管理三个程序员,功能开发一个软件,为了控制和管理软件,项目经理可以定义一些接口,然后由程序员具体实现

//A程序员
public class MysqlDB implements DBInterface{
    @Override
    public void connect() {
        System.out.println("连接Mysql...");
    }
​
    @Override
    public void close() {
        System.out.println("关闭Mysql...");
    }
}
=====================================================
//B程序员
public class OracleDB implements DBInterface{
    @Override
    public void connect() {
        System.out.println("连接Oracle...");
    }
​
    @Override
    public void close() {
        System.out.println("关闭Oracle...");
    }
}
======================================================
public interface DBInterface {//项目经理
    //规定接口的相关方法
    public void connect();//连接方法
    public void close();//关闭方法
}
======================================================
public class HelloJava {
    public static void main(String[] args) {
        MysqlDB mysqlDB = new MysqlDB();
        t(mysqlDB);
        OracleDB oracleDB = new OracleDB();
        t(oracleDB);
    }
    public static void t(DBInterface db){
        db.connect();
        db.close();
    }
}
//优点:规范,可以进行统一的管理

22.接口使用细节

  1. 接口不能被实例化

  2. 接口中所有的方法是public方法,接口中的抽象方法,不可以用abstract修饰;例如void aaa() ;实际上是abstract void aaa();

  3. 一个普通类实现接口,就必须将该接口的所有方法都实现

  4. 抽象类实现接口,可以不用实现接口方法

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

  6. 接口中的属性,只能是final的,而且是public static final修饰符。例如 int a = 1;实际上是public static final int a = 1;(必须初始化)

  7. 接口中属性的访问形式:接口名.属性名

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

  9. 接口的修饰符只能是public和默认

  • 10
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值