java学习笔记09接口的使用

接口 interface
1)接口 api 程序接口 app = web前端 + 后端(程序 数据库)api

2)java 编程接口是一种编程规范对象 interface。由于规范团队人员的习惯。

3)声明接口,是一种编程规范,约束程序人员编写类的名字。
一个类可以继承多个接口,但一个类这能有一个父类。
java 8 以前接口只能包括:全局静态常量和抽象方法。

java 8开始接口包括内容如下:

全局静态常量 int i = 3 ;

也是public final static int i =3;

抽象方法 void conn();

是 public abstract void conn();

静态实现方法 static

public static void conn(){
}

使用的时候可以直接通过接口 Db.conn();

默认实现方法 default

public default int pf(int i){
reutrn i*i;
}
使用的时候,通过接口的实现类的对象实例来调用执行。

函数式接口(接口中有且只有一个抽象方法的接口)

使用的时候,是通过lambda表达式使用

下面编写个简单的例子来实现接口。这只是测试接口,并没有写具体的方法,只是写了个架子。
首先定义接口

public interface DbDao {
    
    
    boolean connect();
    int save();
    int delById();
    int update();
    void query();

    
}

然后定义两个类继承接口,当继承接口后,大部分代码可借由高级工具生成。

public class DbDaoMysqlImpl implements DbDao{
    
    
    /**
     * @return
     */
    @Override
    public boolean connect() {
    
    
        System.out.println("Mysql connect success...");
        return true;
    }

    /**
     * @return
     */
    @Override
    public int save() {
    
    
        System.out.println("mysql 数据保存成功");
        return 0;
    }

    /**
     * @return
     */
    @Override
    public int delById() {
    
    
        System.out.println("mysql删除完成");
        return 0;
    }

    /**
     * @return
     */
    @Override
    public int update() {
    
    
        System.out.println("mysql修改完成");
        return 0;
    }

    /**
     *
     */
    @Override
    public void query() {
    
    
        System.out.println("mysql 查询所有");
    }
}
public class DbDaoPgsqlImpl implements DbDao{
    
    

    /**
     * @return
     */
    @Override
    public boolean connect() {
    
    
        System.out.println("PostgreSql Connection success...");
        return true;
    }

    /**
     * @return
     */
    @Override
    public int save() {
    
    
        System.out.println("pgsql 数据保存成功");
        return 0;
    }

    /**
     * @return
     */
    @Override
    public int delById() {
    
    
        System.out.println("pgsql 删除完成");
        return 0;
    }

    /**
     * @return
     */
    @Override
    public int update() {
    
    
        System.out.println("pgsql 修改完成");
        return 0;
    }

    /**
     *
     */
    @Override
    public void query() {
    
    
        System.out.println("pgsql 查询所有");
    }
}

下面可以写一个简单的Demo验证接口。

public class Demo {
    
    
    public static void main(String[] args) {
    
    
        DbDao my=new DbDaoMysqlImpl();
        my.connect();
        my.save();
        my.delById();
        my.update();
        my.query();
        System.out.println("----------------------------------");
        DbDao pg=new DbDaoPgsqlImpl();
        pg.connect();
        pg.save();
        pg.delById();
        pg.update();
        pg.query();
    }
}

猜你喜欢

转载自blog.csdn.net/xxxmou/article/details/129092663
今日推荐