java定义两个类一个小提琴类一个吉他类,定义一个泛型类
时间: 2024-11-19 09:15:34 浏览: 5
在Java中,如果你想定义一个通用的乐器类,可以使用泛型来支持多种类型的乐器。例如,你可以创建一个名为`Instrument`的抽象类,然后定义两个具体的子类`Violin`和`Guitar`作为泛型的实例。这里是一个简化的示例:
```java
// 抽象乐器类
public abstract class Instrument<T extends String> {
protected T name;
// 构造函数
public Instrument(T name) {
this.name = name;
}
// 公共方法,展示名称
public abstract void play();
// 获取乐器名称
public T getName() {
return name;
}
}
// 小提琴类,实现抽象类
public class Violin extends Instrument<String> {
@Override
public void play() {
System.out.println(getName() + "正在演奏小提琴曲");
}
}
// 吉他类,同样实现抽象类
public class Guitar extends Instrument<String> {
@Override
public void play() {
System.out.println(getName() + "正在弹奏吉他独奏");
}
}
// 主程序中使用
public class Main {
public static void main(String[] args) {
Violin violin = new Violin("小提琴");
violin.play(); // 输出:小提琴正在演奏小提琴曲
Guitar guitar = new Guitar("吉他的名字");
guitar.play(); // 输出:吉他的名字正在弹奏吉他独奏
}
}
```
在这个例子中,`T extends String`表示`Instrument`类接受任何类型的字符串,`Violin`和`Guitar`分别继承了这个类,并实现了各自的`play()`方法。
阅读全文