泛型(java菜鸟的课堂笔记)
public static void show(List<? extends Number> l){}public static void show(List<? super String> l){}public static void main(String[] args) { Person<Integer> p1 = new Person<>(); p1.setVal(99);Person<Double> p2 = new Person<>(); p2.setVal(3.14);Person<String> p3 = new Person<>(); p3.setVal("007");show(p1);//√ show(p2);//√ show(p3);//× }public static void show(Person<? extends Number> p){ System.out.println(p.getVal());}public static void main(String[] args) { Person<Integer> p1 = new Person<>(); p1.setVal(99);//Integer Person<Double> p2 = new Person<>(); p2.setVal(3.14);//Double Person<String> p3 = new Person<>(); p3.setVal("007");//String Person<Object> p4 = new Person<>(); p4.setVal(new Object());//Object show(p1);//× show(p2);//× show(p3);//√ show(p4);//√ }public static void show(Person<? super String> p){ System.out.println(p.getVal());}
public class DaoImpl<T> implements IDAO<T>{}public class DaoImpl implements IDAO<String> {}
public static <T> T show(T param){ return param; }.....main.....{ System.out.println(show(new Date())); System.out.println(show("cditcast"));}
public <T> T[] show(T[] ts) {}public <T> void show(T ... ts){}
public class Demo1 {public static void main(String[] args) { Map<String,String> map = new HashMap<>(); map.put("1", "A");map.put("2", "B"); map.put("3", "C"); map.put("4", "D");Set<Map.Entry<String, String>> set = map.entrySet(); Iterator<Map.Entry<String, String>> it = set.iterator(); while(it.hasNext()) {Map.Entry<String, String> entry = it.next(); System.out.println(entry.getKey() +"-->" + entry.getValue());}}}
class Num<T extends Number>{private T t;public Num(T t) {this.t= t;}//。。。。 getter/setter。。。。 } public class Demo{public static void main(String[] args) {Num<Integer> n= new Num<>(5);Integer i= n.getT();Num n2 = n;//会丢掉泛型信息Number num= n2.getT();//Integer i= n2.getT();} } public class Demo{public static void main(String[] args) {List<Integer> li= new ArrayList<>();li.add(1);List<String> ls= null;//ls= li;不能转换List list= li;ls= list;//不会报错,只有未经检查警告,此时l ist实际引用的是List<Integer>System.out.println("-->" + ls.get(0));//企图当做String类型对象取出} }
转载于:https://www.cnblogs.com/qihongbao/p/6756836.html
泛型(java菜鸟的课堂笔记)相关推荐
- Java菜鸟教程笔记
参考:http://www.runoob.com/java/java-tutorial.html Java 基本数据类型 内置数据类型 引用类型 Java 变量类型 Java 局部变量 实例变量 类变 ...
- 圣思园java.doc_北京圣思园java课堂笔记.doc
北京圣思园java课堂笔记.doc JAVASELesson11.类是一种抽象的概念,对象是类的一种具体表示形式,是具体的概念.先有类,然后由类来生成对象(Object).对象又叫做实例(Instan ...
- 五子棋人机大战(Java菜鸟学习笔记)
五子棋人机大战(Java菜鸟学习笔记) 逻辑是: 1.绘制棋盘: 2.人机开始各执行一次操作,每进行一次操作就进行判断输赢 其中判断输赢主要分成四个方向,横向.纵向以及交叉向,此时可以画图来找规律实现 ...
- SCAU JAVA 课堂笔记
JAVA 课堂笔记 对象的使用 1.对象引用变量 2.new 创建对象 = 关联 3.引用 eg: .length 引用类的时候是传递地址 传递int的时候是传递的值 函数调用的时候 需要注意是传递的 ...
- 课堂笔记学习java(初级)
这是有关Java语言基础的,偶这学期专业课开始学习java,希望通过此贴把偶的课堂笔记与大家分享,与初学者共同从零学起,还请各位高手随时指点,引导大家把基础打好,谢谢 . 现在每周两节课,偶 ...
- 千峰java 笔记整理_JAVA学习笔记系列:菜鸟Vue学习笔记(四)
菜鸟Vue学习笔记(四) 上周学习了使用Vue来操作表单元素进行数据双向绑定,今天我们来学习下Vue中的组件,Vue中的组件作用就是去封装一些常用的页面标签,将其当做一个整体,以便在其他位置直接使用一 ...
- Java郭克华课堂笔记
Java郭克华笔记 class Pro1{public static void main (String[] args) {System.out.print("HelloWorld" ...
- Android菜鸟的成长笔记(13)——异步任务(Async Task)
Android菜鸟的成长笔记(13)--异步任务(Async Task) 原文: [置顶] Android菜鸟的成长笔记(13)--异步任务(Async Task) Android的UI线程主要负责处 ...
- Java菜鸟到大牛学习路线培训视频
百度网盘下载 这是一套java菜鸟到大牛学习路线培训教程,由工作了10年的资深Java架构师整理.主要分5个阶段:Java程序员->Java初级软件工程师->Java中级软件工程师-> ...
最新文章
- slub object 内存布局
- 【NLP系列】最新BERT相关论文汇总
- Vivado不同版本打开IP核锁定的解决办法
- Ubuntu 18.04 更改静态IP
- DeepLearning tutorial(3)MLP多层感知机原理简介+代码详解
- php递归面包屑,php可应用于面包屑导航的递归寻找家谱树实现方法
- RL之SARSA:利用强化学习之SARSA实现走迷宫—训练智能体走到迷宫(复杂陷阱迷宫)的宝藏位置
- ASP.NET 2.0+Atlas编写鼠标拖放程序(2)
- c语言修仙受控可看吗,强推三本神奇到爆的小说,c语言修仙,程序员与修真会擦出什么火花...
- python正则匹配html标签_Python正则获取、过滤或者替换HTML标签的方法
- 通过Chrome扩展来批量复制知乎好友
- HTML+CSS简易淘宝页面
- Anylogic学习--------------数学函数
- c语言中有队列头文件吗,C语言队列学习竟是如此简单!你,懂了嘛?
- 不重复的三位数python_Python趣味案例之不重复的三位数
- 并行计算、分布式计算、网格计算讲解
- 【第一组】第十五次冲刺例会纪要
- element中的横线,element的tab,下划线不显示的问题
- HTML+CSS+JS制作【飞机大战】小游戏(键盘版和鼠标版)
- 小学教师听课体会 计算机,小学教师观有效课堂听课心得体会
热门文章
- 【mongodb系统学习之三】进入mongodb shell
- 【高斯消元】bzoj1013 [JSOI2008]球形空间产生器sphere
- 《几何与代数导引》习题1.18——Ceva 定理
- 红帽:IaaS与PaaS齐头并进
- [转贴]基于HTTP的QQ协议
- tmpwatch命令
- 2019有的图纸打印出来看不清楚_CAD制图初学入门:CAD打印实用技巧
- html个人博客完整代码_hexo | 不用写代码,2小时快速搭建个人博客
- python学习方法_十二种学习Python的方法
- 使用Linux,Python和Raspberry Pi酿造啤酒