java 泛型的几点备忘

1、在java虚拟机中是没有泛型的,所有泛型类的参数都会被擦除,如下:

public void test(List<String> list, int num){}public void test(List<Integer> list, int num){}

这两个方法对于java编译器来说是一样的,因此无法编译通过。

2、下面两种写法都是OK的,但推荐用后者:

public <I extends Fruit> void test(List<I> list){}public void test(List<? extends Fruit> list){}

3、关于<? extends >和 <? extends >

        //<? extends T> 表示类型的上界,表示参数化类型的可能是T 或是 T的子类//<? super T> 表示类型下界,表示参数化类型是此类型的超类型(父类型)
        List<? extends Fruit> list = new ArrayList<Apple>();//flist.add(new Fruit()); 编译错误list.add(null);Apple apple = (Apple) list.get(0);Fruit item  = (Fruit) list.get(0);List<? super Fruit> list1 = new ArrayList<Fruit>();list1.add(new Fruit());list1.add(new Apple());list1.add(null);Fruit item1 = (Fruit) list1.get(0);//Apple apple = (Apple)list1.get(0);编译错误

 

转载于:https://www.cnblogs.com/Fredric-2013/p/4577345.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/398005.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用最简单的例子说明设计模式(三)之责任链、建造者、适配器、代理模式、享元模式...

责任链模式一个请求有多个对象来处理&#xff0c;这些对象是一条链&#xff0c;但具体由哪个对象来处理&#xff0c;根据条件判断来确定&#xff0c;如果不能处理会传递给该链中的下一个对象&#xff0c;直到有对象处理它为止使用场景1)有多个对象可以处理同一个请求&#xff0…

Ubuntu 12.04 修改/etc/resolv.conf重启后还原成修改前状态解决办法

$ sudo vi /etc/resolvconf/resolv.conf.d/head (最后一行添加)按a或i进入编辑模式search spreadtrum.com (寻找或声明域spreadtrum.com)nameserver 10.0.0.97按Esc键退出编辑模式:wq (保存并退出)$ sudo resolvconf -u (更新resolv.conf文件)/etc/resolv.conf文件中就会多…

利用Java针对MySql封装的jdbc框架类 JdbcUtils 完整实现(包含增删改查、JavaBean反射原理,附源码)...

最近看老罗的视频&#xff0c;跟着完成了利用Java操作MySQL数据库的一个框架类JdbcUtils.java,完成对数据库的增删改查。其中查询这块&#xff0c;包括普通的查询和利用反射完成的查询&#xff0c;主要包括以下几个函数接口: 1、public Connection getConnection() 获得数据库…

Linux启动提示Kernel panic - not syncing: Attempted to kill init解决办法

系统类型&#xff1a;CentOS 6.5(x64) 启动提示&#xff1a;Kernel panic - not syncing: Attempted to kill init 解决办法&#xff1a; 系统启动的时候&#xff0c;按下‘e’键进入grub编辑界面&#xff0c;编辑grub菜单&#xff0c;选择“kernel /vmlinuz-XXXXro root/dev/v…

vuex和vuejs

前言&#xff1a;在最近学习 Vue.js 的时候&#xff0c;看到国外一篇讲述了如何使用 Vue.js 和 Vuex 来构建一个简单笔记的单页应用的文章。感觉收获挺多&#xff0c;自己在它的例子的基础上进行了一些优化和自定义功能&#xff0c;在这里和大家分享下学习心得。 在这篇教程中我…

laravel mysql 配置,laravel5数据库配置及其注意事项

今天分享一个Laravel5数据库配置上的坑。Laravel5作为一套简洁、优雅的PHP Web开发框架(笑)&#xff0c;唯一不足的一点就是中文手册或者说是资料比较少&#xff0c;虽然现在很多大神也开始普及这些东西&#xff0c;但是大神一遍也会忽略一下小坑。今天配置了一下数据库&#x…

React开发中常用的工具集锦

本文从属于笔者的React入门与最佳实践系列。本文记录了笔者在React开发中常见的一些工具插件&#xff0c;如果你想寻找合适的项目生成器或者模板&#xff0c;请参考笔者的使用Facebook的create-react-app快速构建React开发环境 React Devtools React Devtools是React官方提供的…

9-[记录操作]--数据的增删改,权限管理

1、数据操作语言&#xff1a; DML&#xff08;data manage language&#xff09; 在MySQL管理软件中&#xff0c;可以通过SQL语句中的DML语言来实现数据的操作&#xff0c;包括 使用INSERT实现数据的插入UPDATE实现数据的更新使用DELETE实现数据的删除使用SELECT查询数据以及。…

hdu 1023 Train Problem II

题目连接 http://acm.hdu.edu.cn/showproblem.php?pid1212 Train Problem II Description As we all know the Train Problem I, the boss of the Ignatius Train Station want to know if all the trains come in strict-increasing order, how many orders that all the tra…

阿贝尔分部求和法的应用(二)

14.(阿贝耳定理) 设$\sum\limits_{n0}^{\infty}a_{n}s$. 则$\lim_{x\to 1-}\sum\limits_{n0}^{\infty}a_{n}x^{n}s$.证明: 容易看出$f(x)\sum\limits_{n0}^{\infty}a_{n}x^{n}$在$0 \leq x \leq 1$上一致收敛.由Cauchy收敛准则知,任意$\varepsilon>0$,存在$n$任意$p>0$有…

python中字母大小顺序,如何在Python中按字母顺序对unicode字符串排序?

Python sorts by byte value by default, which means comes after z and other equally funny things. What is the best way to sort alphabetically in Python?Is there a library for this? I couldnt find anything. Preferrably sorting should have language support…

Nginx自建CDN加速节点 实现DNS智能解析网站项目

如今&#xff0c;网站项目越来越多的会使用CDN加速&#xff0c;如果需要便捷一点的可以直接用第三方提供的CDN加速服务&#xff0c;比如百度CDN、七牛、又拍云、腾讯云、阿里云等等服务商都有提供这类服务。但是前提条件是需要一定的成本&#xff0c;以及网站域名是需要BA才可以…

字符串字典排序

把字符串以字典的展示形式排序&#xff0c;如把字符串abc,bad,aade,bdca排列成aade,abc,bad,bdca。 1.使用冒泡排序 (1) 相邻两数据两两比较&#xff0c;较大的放到后面&#xff0c;直到把最大的字符串放在最后一个位置。 (2) 从头开始再进行相邻数据两两比较&#xff0c;较大的…

OC2_点语法(属性关键字)

// // Dog.h // OC2_点语法(属性关键字) // // Created by zhangxueming on 15/6/16. // Copyright (c) 2015年 zhangxueming. All rights reserved. //#import <Foundation/Foundation.h>interface Dog : NSObject //属性关键字 //assgin(缺省)直接赋值 //基本类型 …

matlab中获取view,ios 怎么获取一个view的位置

ios 怎么获取一个view的位置以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;ios 怎么获取一个view的位置打开appstore进入应用&#xff0c;右上角的分享按钮(从右往左数第二个)&#xff0c;拷…

eureka需要替换吗_Spring Cloud Alibaba迁移指南1:零代码从Eureka迁移到Nacos

作者&#xff1a;得少&#xff0c;校对&#xff1a;周立。在本号首发&#xff0c;欢迎转载。Spring Cloud官方宣布Spring Cloud Netflix进入维护状态&#xff0c;后续不再会有新的功能已成为事实。作为开发者&#xff0c;如何使用极简的方式替换Netflix相关组件成为首要解决的问…

P1134 阶乘问题

题目描述 也许你早就知道阶乘的含义&#xff0c;N阶乘是由1到N相乘而产生&#xff0c;如&#xff1a; 12! 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 x 10 x 11 x 12 479,001,600 12的阶乘最右边的非零位为6。 写一个程序&#xff0c;计算N(1<N<50,000,000)阶乘的最右边的非零…

JAVA TCP通信练习

2019独角兽企业重金招聘Python工程师标准>>> 1、Server端 package com.hhdys.serviceimpl;import java.io.*; import java.net.ServerSocket; import java.net.Socket; import java.util.ArrayList; import java.util.List; import java.util.Scanner; import java.…

[转载]UEditor报错TypeError: me.body is undefined

本文转载来自&#xff1a; UEditor报错TypeError: me.body is undefined 今天在使用UEditor的setContent的时候报错&#xff0c;报错代码如下 TypeError: me.body is undefined 或 Uncaught TypeError: Cannot set property innerHTML of undefined 错误的原因是没有等UEditor创…

微服务架构下的身份认证

从单体应用架构到分布式应用架构再到微服务架构&#xff0c;应用的安全访问在不断的经受考验。为了适应架构的变化、需求的变化&#xff0c;身份认证与鉴权方案也在不断的变革。面对数十个甚至上百个微服务之间的调用&#xff0c;如何保证高效安全的身份认证&#xff1f;面对外…