像接口和继承都是可以定义抽象类,接口是必须定义抽象类
接口其实也是一种父类(干爹),实现类是子类
定义的接口默认规范:所定义的方法是抽象方法(公开的,给别人用),都是默认常量_ 声明了一个接口:体现一种规范,规范一定是公开的; 所以都是public static final定义常量的关键字可以不写
* 定义抽象方法也可以不写(public abstract ) 可以不写,所写的方法都是抽象的
** 这里的规范:就是约定别人一定要干某件事情(一定要抽象,一定要常量)**
package com.itheima.d10_interface;
/**
* 声明了一个接口:体现一种规范,规范一定是公开的; 所以都是public static final定义常量的关键字可以不写
* 定义抽象方法也可以不写(public abstract ) 可以不写,所写的方法都是抽象的
* 这里的规范:就是约定别人一定要干某件事情(一定要抽象,一定要常量)
*/
public interface InterfaceDemo { // 定义接口是interface ,类是class
// 目标:接口中得成分特点:JDK 8 之前接口中只能有抽象方法和常量
// 1. 常量
// 注意:由于接口体现规范思想,规范默认都是公开的,所以代码层面,public static final 可以省略不写
String SCHOOL_NAME = "黑马程序员"; // 接口有默认规范
// public static final String SCHOOL_NAME = "黑马程序员"; // 这是一个常量,定义常量名要全大写
// 抽象方法
// 注意:由于接口体现规范思想,规范默认都是公开的,所以代码层面,public static final 可以省略不写
void run();
// public abstract void run();
void eat();
// public abstract void eat();
}