1、定义一个泛型类Instrument,其中包括一个泛型方法void+play(E+ x)。定义两种乐器类:Cello、Violin可以进行演奏。定义一个测试类进 行测试。程序设计思路:定义两种乐器类
时间: 2024-06-13 10:08:10 浏览: 140
根据提供的引用内容,可以看出本题是关于Java中泛型类和泛型方法的问题。下面是回答:
在Java中,定义泛型类需要在类名后面加上尖括号<>,在尖括号中定义泛型参数。泛型类中的方法也可以是泛型方法,需要在方法返回类型前面加上尖括号<>,在尖括号中定义泛型参数。下面是定义一个泛型类Instrument,其中包括一个泛型方法void play(E x)的示例代码:
```java
public class Instrument<T> {
public void play(T t) {
System.out.println("Playing " + t.toString());
}
}
class Cello {
@Override
public String toString() {
return "Cello";
}
}
class Violin {
@Override
public String toString() {
return "Violin";
}
}
public class Test {
public static void main(String[] args) {
Instrument<Cello> cello = new Instrument<>();
cello.play(new Cello()); // 输出:Playing Cello
Instrument<Violin> violin = new Instrument<>();
violin.play(new Violin()); // 输出:Playing Violin
}
}
```
上述代码中,Instrument类是一个泛型类,其中的play方法是一个泛型方法,可以接受任何类型的参数。Cello和Violin类是两种乐器类,它们都重写了toString方法,用于输出乐器名称。Test类是一个测试类,用于测试Instrument类的play方法。
阅读全文