`
azvf
  • 浏览: 144423 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JAVA 泛型 HelloWorld

阅读更多

    一般的类和方法,只能使用具体的类型:要么是基本类型,要么是自定义的类型。如果编写可以应用于多种类型的代码,将受限于java的强类型束缚。有一种不安全的写法,是使用Object。javaSE5中有了泛型,解决了这个问题。

泛型的应用场景之一,就是容器类,用于持有其他任意类实例。比如,java集合框架中的List,Set,Map。

package tik4.generic;

import java.util.ArrayList;
import java.util.List;

public class Holder<T> {
	private T t;
	public Holder(T t) {
		this.t = t;
	}
	public T get() {
		return t;
	}
	public void set(T t) {
		this.t = t;
	}
	public static void main(String[] args) {
		List<String> strList0 = new ArrayList<String>();
		strList0.add("firStr");
		Holder<List<String>> holder = new Holder<List<String>>(strList0);

		List<String> strList1 = new ArrayList<String>();
		strList0.add("secStr");
		// OK
		holder.set(strList1);

		List<Integer> intList = new ArrayList<Integer>();
		// 不能编译
		// holder.set(intList);
	}
}

 

 

分享到:
评论

相关推荐

    java泛型总结.docx

    类型推断:在Java 7及以上版本中,可以使用varargs和钻石操作符来推断类型参数。例如,List[] lists = Arrays.asList(new List() {{ add("hello"); add("world"); }}); 泛型边界:可以使用泛型边界来限制类型参数的...

    java高手真经 光盘源码

    java高手真经 全光盘源代码 打包rar 第1部分(2个程序包) HelloWorld.zip 01.Java入门样例Hello...javageneric.zip 27.Java泛型编程 javaannotation.zip 28.Java注释符编程 javafeature.zip 29.Java5.0语言新特性

    Java高手真经(编程基础卷)光盘全部源码 免积分

    看到那些要积分的很不酸,发布免费版本。 第1部分(2个程序包) HelloWorld.zip 01.Java入门样例...javageneric.zip 27.Java泛型编程 javaannotation.zip 28.Java注释符编程 javafeature.zip 29.Java5.0语言新特性

    Java高手真经(编程基础卷)光盘全部源码

    看到很多人都分卷打包的,下载很是不方便,还浪费积分,我就整合压缩打包到一个包里面,里面包含全部...javageneric.zip 27.Java泛型编程 javaannotation.zip 28.Java注释符编程 javafeature.zip 29.Java5.0语言新特性

    Java开发技术大全(500个源代码).

    HelloWorldApp.java 第一个用Java开发的应用程序。 firstApplet.java 第一个用Java开发的Applet小程序。 firstApplet.htm 用来装载Applet的网页文件 第2章 示例描述:本章介绍开发Java的基础语法知识。 ...

    从0开始学Java第一天-Java学习资料-源码基础-Java源码-总结

    第一天了解Java语言发展史,Java是一门具有面向对象思想,并且支持跨平台,并且支持泛型的高级编程语言。1.学习并掌握如何从0搭建Java环境(JDK的下载,安装,卸载);2.学会HelloWorld案例编写,知道如何解释该程序...

    sJava:使用S表达式的Java方言

    这是sJava中的hello world程序(examples / helloworld.sjava): (define-class Main () public ((main args String[]) void public static (System:out:println "Hello world") ) ) 并在Java中: public ...

    Java经典编程300例(完整版+源码

    实例001 输出“hello world” 实例002 输出控制台传递的参数 实例003 输出由“*”组成的三角形 实例004 输出符号表情 第2章 eclipse开发工具 实例005 下载并运行eclipse 工具 实例006 为eclipse安装汉化包 ...

    JAVA上百实例源码以及开源项目

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    JAVA上百实例源码以及开源项目源代码

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    Java JDK 7学习笔记(国内第一本Java 7,前期版本累计销量5万册)

    2.1 从hello world开始 22 2.1.1 撰写java原始码 22 2.1.2 path是什么 24 2.1.3 jvm(java)与classpath 27 2.1.4 编译程序(javac)与classpath 30 .2.2 管理原始码与位码文档 31 2.2.1 编译程序(javac)与...

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    1.3.2 编译自己的HelloWorld程序 11 1.3.3 让代码运行起来 13 1.4 初探Hello World 14 1.4.1 类(Class):Java世界中一类物体 14 1.4.2 方法(Method):物体的功能 15 1.4.3 main()方法:所有Java程序执行的...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    1.3.2 编译自己的HelloWorld程序 11 1.3.3 让代码运行起来 13 1.4 初探Hello World 14 1.4.1 类(Class):Java世界中一类物体 14 1.4.2 方法(Method):物体的功能 15 1.4.3 main()方法:所有Java程序执行的...

    【Kotlin教程】EasyKotlin.zip

    2.快速开始:HelloWorld 3.Kotlin语言基础 4.基本数据类型与类型系统 5.集合类 6.泛型 7.面向对象编程 8.函数式编程 9.协程 10.Kotlin与Java互操作 11.使用Kotlin集成SpringBoot开发Web服务端 12.使用Kotlin集成...

    跟我学Java-day14-ArrayList集合.pdf

    泛型的使用 用于约束集合中存储元素的数据类型 1.2ArrayList类常用方法【应用】 1.2.1构造方法 1.2.2成员方法 1.2.3示例代码 public class ArrayListDemo02 { public static void main(String[] args) { //...

    Kotlin极简教程.pdf

    本书从Kotlin的HelloWorld开始,生动讲解Kotlin的基础知识和实战案例,分为两大部分:“基础知识”部分包括语言基础、基本数据类型与类型变量、集合类、泛型、面向对象编程、函数式编程、协程等;“实战”部分包括...

    Kotlin极简教程

    本书从Kotlin的HelloWorld开始,生动讲解Kotlin的基础知识和实战案例,分为两大部分:“基础知识”部分包括语言基础、基本数据类型与类型变量、集合类、泛型、面向对象编程、函数式编程、协程等;“实战”部分包括...

    《kotlin极简教程》超清高清电子版 mobi 下载 kotlin入门

    本书从Kotlin的HelloWorld开始,生动讲解Kotlin的基础知识和实战案例,分为两大部分:“基础知识”部分包括语言基础、基本数据类型与类型变量、集合类、泛型、面向对象编程、函数式编程、协程等;“实战”部分包括...

Global site tag (gtag.js) - Google Analytics