package com.study.generics;
class GenericsControlClass<T> { //T 泛型参数类型由外部指定
private T variable;
public T getVariable() {
return variable;
}
public void setVariable(T e) {
this.variable = e;
}
public String toString() { //重写泛型类中的toString方法,
return "泛型类的变量值为:"+this.variable;
}
}
public class GenericsDemo05 {
public static void main(String []args) {
GenericsControlClass<String> controlClass = new GenericsControlClass<String>();
controlClass.setVariable("泛型受限制");
GenericsDemo05 demo05 = new GenericsDemo05();
demo05.controlDisplay(controlClass);
controlClass.setVariable("泛型受限制1");
demo05.controlDisplay(controlClass);
GenericsControlClass<Float> controlClass1 = new GenericsControlClass<Float>();
controlClass1.setVariable(100.00f);
//demo05.controlDisplay(controlClass1);//此处泛型受限制,抛出The method controlDisplay(GenericsControlClass<? extends String>)
//in the type GenericsDemo05 is not applicable for the arguments (GenericsControlClass<Float>)
//此泛型受限制,且不可以传递Object对象
//GenericsControlClass<Object> obj = new GenericsControlClass<Object>();
//controlClass.setVariable(new Object("e2"));
//demo05.controlDisplay(controlClass);
//demo05.controlDisp(controlClass);
//泛型不能向上转型
//GenericsControlClass<Object> obj1 = new GenericsControlClass<Object>();
//obj1=controlClass;
}
public void controlDisplay(GenericsControlClass<? extends String> control) { //泛型受限制,则使用extends 如:泛型类<? extends Object> 实例对象 泛型值可以使用String 和Object对象
System.out.println(control); //泛型类中不重写toString() 方法,则打印出来的是泛型类的对象。
}
public void controlDisp(GenericsControlClass<? extends Number> control) { //泛型受限制,Number是所有数值型的基类,泛型参数类型可以为,Long ,Double,Float,等不可以为String等
System.out.println(control);
}
}
分享到:
相关推荐
4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip...
Java泛型编程指南.pdf 此文章译自SUN的泛型编程指南
Java Generics and Collections 英文版,详细描述java 泛型技术
java泛型技术之发展,学习JAVA 泛型的不错东东
java 泛型接口示例 java 泛型接口示例 java 泛型接口示例
这是一个使用JAVA实现的泛型编程,分为两部分,第一部分创建泛型类,并实例化泛型对象,得出相加结果。 第二部分用户自行输入0--4,选择要进行的加减乘除运算或退出,再输入要进行运算的两个数,并返回运算结果及...
java 泛型类的类型识别示例 java 泛型类的类型识别示例 java 泛型类的类型识别示例
Java泛型技术之发展
java 泛型方法使用示例 java 泛型方法使用示例 java 泛型方法使用示例
1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1....
java,学习java泛型,java培训之泛型.pptxjava培训之泛型.pptxjava培训之泛型.pptxjava培训之泛型.pptx
思维导图之Java泛型详解
深入理解java泛型,包括类名泛型的定义,方法泛型定义,泛型的返回
主要介绍了Java泛型的用法及T.class的获取过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
很好的Java泛型的总结,看完之后你一定会知道java泛型的底层机制,你一定会学会Java泛型!
java泛型详解.pdf
Java泛型技术之发展.zip 中文完整版
网上很多讲泛型原理的文章, 很少有提到我们什么时候使用泛型有优势, 我就泛型类和方法搞了两个实例,算是探索下泛型使用的冰山一角吧,在我博客里面有配套的文章,可以配套看.
实例讲解Java泛型编程的快速入门实例讲解Java泛型编程的快速入门实例讲解Java泛型编程的快速入门实例讲解Java泛型编程的快速入门实例讲解Java泛型编程的快速入门