8、泛型特性
来源:互联网 发布:淘宝买dnf账号 编辑:程序博客网 时间:2024/05/16 04:55
?通配符,也可以理解为占位符
泛型的限定:
? extends E: 可以接收E类型或者E类型的子型;上限。
泛型的限定:
? extends E: 可以接收E类型或者E类型的子型;上限。
? super E: 可以接收E类型或者E类型的父类型;下限。
调用多类型元素泛型例子
package GenericPakage; public class GenericDemo2 { public static void main(String[] args) { Demo demo = new Demo(); demo.show("胡平燕"); demo.show(55232); }} class Demo{ public <Q> void show(String s) { System.out.println(s); } public <Q> void show(int s) { System.out.println(s); }}
接口泛型例子
package GenericPakage; public class GenericDemo2 { public static void main(String[] args) { Demo demo = new Demo(); demo.show("胡平燕"); }} interface Inter<T>{ public abstract void show(T t);} class Demo implements Inter<String>{ public void show(String s) { System.out.println(s); } }
//泛型限定例子package GenericPakage;import java.util.Comparator;import java.util.Iterator;import java.util.TreeSet; public class GenericDemo4 { public static void main(String[] args) { TreeSet<Worker> p = new TreeSet<Worker>(new Comp()/*比较器*/); p.add(new Worker("4")); p.add(new Worker("2")); p.add(new Worker("8")); TreeSet<Student2> s = new TreeSet<Student2>(new Comp()/*比较器*/); s.add(new Student2("6--")); s.add(new Student2("3--")); s.add(new Student2("7--")); printColl(p); printColl(s); } public static void printColl(TreeSet<? extends Person2> al) { for(Iterator<? extends Person2> it = al.iterator(); it.hasNext();) { System.out.println(it.next().getName()); } }} class Comp implements Comparator<Person2>{ @Override public int compare(Person2 p1, Person2 p2) { return p1.getName().compareTo(p2.getName()); } } class Person2{ private String name; Person2(String name) { this.name = name; } public String getName() { return name; }} class Student2 extends Person2{ Student2(String name) { super(name); }} class Worker extends Person2{ Worker(String name) { super(name); }}
package GenericPakage; public class GenericDemo2 { public static void main(String[] args) { Demo demo = new Demo(); demo.show("胡平燕"); Demo.show(55); }} class Demo{ public void show(String s) { System.out.println(s); } public static <Q> void show(int s) { System.out.println(s); }}
0 0
- 8、泛型特性
- C#泛型特性总结
- 泛型基础特性分析
- Java 8 新特性之泛型的类型推导
- C#2.0 泛型初探 (特性一览)
- jdk5新特性之泛型
- Delphi2009(Tiburon)新特性-泛型示例
- JDK高级特性--有限通配符泛型
- JDK1.5新特性之泛型
- Java1.5新特性之泛型
- jdk新特性之泛型
- Java高级特性之泛型
- JDK5新特性之泛型
- Java泛型的特性与实现
- Java-1.5新特性之泛型
- java高级特性之泛型
- 3、实现泛型特性构件
- 简单理解泛型及其特性
- (c语言)指针和数组下标
- 黑马程序员——c语言的进制表达方式,位运算,数组,字符串数组
- 黑马程序员--O-C内存管理
- UITextView用法总结
- 1_SVN简介及环境搭建
- 8、泛型特性
- iOS 后台播放音乐
- #php中几种页面的跳转方法
- Android中引入第三方Jar包运行时出现java.lang.NoClassDefFoundError
- 一步一步学习androidNDK编程(java给c传递数据)
- 第一份工作总结
- HTML5全部元素详解:一个都不能少
- 黑马程序员-面向对象的学习总结-1
- Android用户界面之常用控件RadioGroup