package hu;
interface Person{ //定义接口Person
public abstract void Identity(); //定义方法Identity()
}
class Student implements Person{
public void Identity() {
System.out.println("人员身份:学生"); //定义类Student实现接口Person,并重写方法Identity()
}
}
class Teacher implements Person{
public void Identity() {
System.out.println("人员身份:教师"); //定义类Teacher实现接口Person,并重写方法Identity()
}
}
class PersonMessage{
public void showMessage(Person person) { //接口Person作为方法的参数类型
person.Identity(); //接口Person作为方法showMessage()的参数类型
}
}
public class huo {
public static void main(String[] args) {
// TODO Auto-generated method stub
Student student=new Student();
Teacher teacher=new Teacher(); //创建对象
PersonMessage teacherMs=new PersonMessage();
student.Identity();
teacherMs.showMessage(teacher); //将表示接口的实参teacher传给方法showMessage()
}
}
知识点:
.接口中接口的命名必须满足标识符的定义规则
.接口可以由多个单词组成,每个单词的首字母一般为大写
.接口体中定义的所有方法都是公共的抽象方法,这些方法只有方法声明,没有方法体
.在接口中除了定义抽象方法以外,还可以定义常量