接口的定义与实现
/* 接口小结
1. 约束作用
2. 定义一些方法,让不同的人去实现
3. 接口里面的方法默认且只能是 public abstract
4. 接口里面的变量(常量是特殊的变量嘛)默认且只能是 public static final
5. 接口不能被实例化,接口没有构造方法
6. implements关键字 实现接口 可以同时实现多个接口 (类似多继承)
7. 必须在实现接口的类里面重写接口的方法
*/
package com.zhan.base05Oop.demo07;
/*
一对一:抽象类 需要用到继承: extends 关键字
一对多:接口: 需要类来实现: implements 关键字 类要重写接口里面的方法
*/
// 利用接口来实现 “多继承”,
public class Test16Impl implements Test16_01,Test16_02{ // alt +insert(Fn) 快捷键来生成 实现接口的方法
@Override
public void timer() {
}
@Override
public void run() {
}
@Override
public void fly() {
}
}
package com.zhan.base05Oop.demo07;
// 抽象的思维
/* 接口小结
1. 约束作用
2. 定义一些方法,让不同的人去实现
3. 接口里面的方法默认且只能是 public abstract
4. 接口里面的变量(常量是特殊的变量嘛)默认且只能是 public static final
5. 接口不能被实例化,接口没有构造方法
6. implements关键字 实现接口 可以同时实现多个接口 (类似多继承)
7. 必须在实现接口的类里面重写接口的方法
*/
public interface Test16_01 {
// interface 关键字 接口 接口都需要有实现类
// 接口中所有定义的变量都是 公有的静态的常量的 public static final
public static final int number=999;
int age=19; // public static final 默认存在,可以不写
// 接口中所有定义的方法都是公有的抽象的 public abstract
public abstract void run();
void fly(); // public abstract 默认存在,可以不写 方法可以带参数
}
package com.zhan.base05Oop.demo07;
public interface Test16_02 {
void timer();
}
标签:定义,16,实现,void,接口,abstract,static,public
From: https://www.cnblogs.com/zhanjianhai/p/17112614.html