答案其实很简单,都是非常基础的东西,但是平时可能不太在意这些细节,在找的时候也有可能不太确定(对我来说
)。
答案如下:
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import org.junit.Test;
public class GenericTest {
static class Person {
public void m(Collection<Person> persons) {
}
}
//泛型声明要放在返回值的前面,所以<T>要放在void前面
static class Employee extends Person {
public void <T> isManager() {
}
}
//泛型不具有协变性,所以下面是编译不了的
static class Student extends Person {
public void m2(Collection<Student> students) {
super.m(students);
}
}
//数组具有协变性,对于用父类声明的子类数组,在设置其他子类对象的时候虽然编译不报错,但是运行时会抛出ArrayStoreException
@Test(expected=ArrayStoreException.class)
public void arrayStoreExceptionTest() {
Person[] persons = new Employee[5];
persons[0] = new Employee();
persons[1] = new Student();
}
//下面是正确的
@Test
public void arrayStoreTest() {
Person[] persons = new Person[2];
persons[0] = new Employee();
persons[1] = new Student();
}
//下面语句在编译时就会出错,体现出泛型列表不具有协变性
public void genericTest() {
List<Person> personList = new ArrayList<Employee>();
}
//static方法和static域均不可引用类的泛型变量,下例中即T
static class Generic<T> {
static T t;
static void method1(T t) {
}
void m1(T t){
}
}
}
分享到:
相关推荐
接下来,从标签“模式分类 duda 课后答案”中,我们可以推测出该书可能与Duda这个名字相关联。实际上,根据一般知识,R.O. Duda、P.E. Hart和D.G. Stork是模式分类领域中的知名学者,其中Duda更是该领域的一个标志性...
* 当使用子网掩码/28来划分一个C类地址时,每个子网中有多少台主机?答案:6台。 * 一个B类网络地址,它的掩码是255.255.255.0。下面哪些选项是对这个网络地址的正确的描述?答案:每一个子网中有254个有效的主机...
答案:可以,标记这个类为 public,并标记这个方法为 sealed。 知识点:可以使用sealed关键字标记某个方法,使其不能被子类覆写。 15. 什么是抽象类(abstract class)? 答案:一种不可以被实例化的类。抽象类中...
答案:C.constructor 在一个对象被new时执行 4. Which package provides Java with the ability to access databases? 答案:A.java.sql 5. 下列运算符哪一个是合法的? 答案:A.&& 6. 执行如下程序代码,C的...
总的来说,这个《大学生英语竞赛C类样题及答案》资源提供了丰富的实践机会,帮助参赛者熟悉考试模式,提升英语技能。考生应充分利用这些资料,结合个人实际情况,制定科学的学习计划,以期在大英赛中取得优异的成绩...
答案:JS 中主要有三类错误:加载时错误、运行时错误和逻辑错误。加载时错误是加载 Web 页面时出现的错误,如语法错误。运行时错误是由于滥用 HTML 语言中的命令而导致的错误。逻辑错误是由于对具有不同操作的函数...
这个压缩包文件"练习题(含答案)_c++oj答案_c++类oj习题_"似乎包含了一系列关于C++类与对象的在线判断题(Online Judge, OJ)解答,这对于学习者来说是一个宝贵的资源,可以帮助他们检验和提升在类和对象方面的理解...
答案:会将数据转发到错误的节点、通过该电缆传输的数据可能发生信号丢失、将对该电缆中传输的数据采用不正确的信号方法、该电缆中发送的数据所采用的编码方法将更改,用于补偿不当连接。 11. 哪种信号传输方法使用...
答案:目标区域已经有数据。 “磁盘扫描程序”的作用是什么?答案:修复文件错误。 哪个键可以将字母锁定为大写?答案:CAPSLOCK键。 在Excel 2000中,除以零导致的错误值是什么?答案:#DIV/0!。 指挥、协调...
答案:可以,但是有一个限制:只有一个 public 类,且文件名必须与该 public 类同名。 2. Java 中有没有 goto 语句? 答案:没有,Java 不支持 goto 语句。 3. && 和 & 的区别是什么? 答案:& 是 bitwise AND ...
解释:该类声明中有三个错误:public slot 声明错误、setValue 函数声明错误、valueChanged 信号声明错误。 13. 设有如下声明... 正确答案:c. 11 12 解释:当执行 b.setValue(11) 后,b 的值将被设置为 11,然后...
在这个“C++类和对象习题答案”中,我们可能看到关于类的设计、对象的创建、成员函数的使用、继承、多态等关键概念的练习和解答。 1. **类的定义与对象的创建** - 类定义:类通过`class`关键字创建,它包含数据...
在C++语言中,类和对象包括普通类、抽象类、模板类和继承类等。 9. C++语言的继承包括哪些?(答案:D) 在C++语言中,继承包括单继承、多继承、多重继承和菱形继承等。 10. C++语言的多态包括哪些?(答案:B)...
答案:使用Thread类的Sleep()方法可以让线程暂停一段时间,但需要注意的是,这并不会让线程终止,一旦从休眠中唤醒线程,线程的状态将会被改变为Runnable,并且根据线程调度,它将得到执行。 2.Java中的原型模式...
- 这个答案看起来不太标准,可能是打字错误或者是某种特定情境下的缩写。无法直接解析其含义。 5. **c.** - 同样缺乏上下文,但从格式上看,可能是在询问一个具体的Java概念或规则,并给出了正确选项c作为答案。 ...
本压缩包包含了从第1届至第10届的数学类竞赛试题及答案,覆盖了初赛和复赛的全部题目,对于参赛者或希望提高数学能力的学生来说,是一份极其宝贵的资源。 每一届的试题都反映了当时的数学教育重点和趋势,通过研究...
5. 若要编写一个类Hello,下列说法中哪些是错误的? 答案:D 解释:在Java中,源代码文件的名称必须与类名相同,否则编译将会出错。 6. 下面哪些是Java关键字? 答案:D 解释:implements是Java的一个关键字,...
因为连续测试 4000B 的数据时可能发现没有错误,但如果测试的二进制位数比 4000B 时,就可能出现错误,那这个系统的误码率就不是为 0 了。 * 问题 10:试说明 PPP 协议的应用范围和帧结构方面的特点。 答案:PPP ...