接口的定义与使用-学生还是老师
时间: 2024-09-26 12:14:02 浏览: 54
接口在编程中是一种规范,它定义了一组常量和抽象方法,而不提供具体的实现。接口主要用于描述类的行为特征,而不是表示状态。例如,在"学生"和"老师"场景下,我们可以创建一个接口`Teacher`和一个接口`Student`:
```java
// 教师接口 Teacher.java
public interface Teacher {
void teach();
String getSubject();
}
// 学生接口 Student.java
public interface Student {
void study(String subject);
void attendClass();
}
```
在这两个接口中,`teach()` 和 `getSubject()` 是教师应该有的行为,`study()`、`attendClass()` 是学生应有的行为。实际的"教师"类和"学生"类会实现这些接口,提供各自的实现细节。
例如,一个具体的教师类`MathTeacher`可能会这样实现:
```java
public class MathTeacher implements Teacher {
@Override
public void teach() {
System.out.println("教数学");
}
@Override
public String getSubject() {
return "数学";
}
}
```
而学生类`HighSchoolStudent`则可以这样实现:
```java
public class HighSchoolStudent implements Student {
@Override
public void study(String subject) {
System.out.println("学习:" + subject);
}
@Override
public void attendClass() {
System.out.println("上课");
}
}
```
通过这种方式,你可以根据需要组合不同的接口实例,实现灵活的角色交互。比如一个学校管理程序可能会有多个`Teacher`实例和多个`Student`实例,它们共同构成了学校的教学体系。
阅读全文