当前位置: 首页 > news >正文

上海个人医疗网站备案优化大师怎么强力卸载

上海个人医疗网站备案,优化大师怎么强力卸载,江苏雷威建设工程有限公司网站,关键词优化seo优化排名Java中,泛型用于编译阶段限制集合中元素的类型,或者限制类中某个属性的类型,编译过程中发生类型擦除,最终还是Object类型。 1. 集合中的泛型 集合默认可以存储任何类型的元素,即Object类型,当使用一个集合…

Java中,泛型用于编译阶段限制集合中元素的类型,或者限制类中某个属性的类型,编译过程中发生类型擦除,最终还是Object类型。

1. 集合中的泛型

集合默认可以存储任何类型的元素,即Object类型,当使用一个集合存储String类型元素时

不使用泛型
        List list = new ArrayList();list.add("a");// 当使用集合中的元素时,需要手动进行类型转换String str0 = (String) list.get(0);// 而且无法保证集合的正确性list.add(123);// 运行时报错类型转换异常 ClassCastExceptionString str1 = (String) list.get(1);
使用泛型
        List<String> list = new ArrayList<>();list.add("a");// 当使用集合中的元素时,通过泛型可以确定,集合中都是指定类型,故不需要手动进行类型转换String str0 = list.get(0);// list.add(123); // 编译不通过

2. 类中泛型

类中使用泛型与集合中同理,使用泛型可以避免使用时的手动强制转换,并保证数据的合法性。

不使用泛型
    public static void main(String[] args) {Box box = new Box("abc");String value = (String) box.getValue();box.setValue(123);// 运行时报错类型转换异常 ClassCastExceptionvalue = (String) box.getValue(); }static class Box {private Object value;public Box(Object value) {this.value = value;}public Object getValue() {return value;}public void setValue(Object value) {this.value = value;}}
3. 使用泛型
    public static void main(String[] args) {Box<String> box = new Box<>("abc");String value = box.getValue();// box.setValue(123); 编译不通过}static class Box<T> {private T value;public Box(T value) {this.value = value;}public T getValue() {return value;}public void setValue(T value) {this.value = value;}}

3. ?和 extends 和 super

? 表示不确定的类型,通常配置 extends 或 super,限制泛型的范围

    public static void main(String[] args) {// <? extends Animal>List<? extends Animal> extendsList = new ArrayList<>();// List<? extends Animal> 只允许读取,因为集合中的元素肯定是Animal或其子类Animal animal = extendsList.get(0); // List<? extends Animal> 不允许新增,因为只知道集合中的元素肯定是Animal或其子类,但无法确定类型的下限// extendsList.add(new Cat()); // <? super Animal>List<? super Animal> supperList = new ArrayList<>();// List<? super Animal> 允许新增Animal的子类,因为集合中的元素肯定是Animal或其父类supperList.add(new Cat());// List<? super Animal> 不允许读取为Animal,因为集合中的元素肯定是Animal或其父类类,但无法确定类型的上限// Animal animal = supperList.get(0); // 但是可以读取为Object,因为Object是所有类的父类Object object = supperList.get(0); // 通配符?List<?> list = new ArrayList<>();// List<?> 相当于 List<? extends Object>,只允许读取为Object,不允许新增list.get(0);}static class Animal {}static class Cat extends Animal {}static class Dog extends Animal {}

参考

https://blog.csdn.net/anlian523/article/details/1008655385538

http://www.dinnco.com/news/31063.html

相关文章:

  • 武汉网站建设电话多少dw软件怎么制作网页
  • 怎么做关于花的网站商业推广费用一般多少
  • 软件ui成都seo培训
  • 文案做站内网站日常维护有哪些厦门seo网站推广优化
  • 南京十大广告公司站长之家的seo综合查询工具
  • 厦门网站制作公司找哪家一件代发48个货源网站
  • 百度 网站添加seo搜索引擎优化是通过优化答案
  • 触屏版网站源码常州网站推广公司
  • 网页设计与网站建设课程考试seo研究协会网
  • 哪些网站可以做移动端模板百度明星搜索量排行榜
  • 侵入别人的网站怎么做seo推广公司价格
  • 昆明市城市建设档案馆网站手机免费建站系统
  • 学做立体书的网站软文写作
  • 中央农村工作会议指出5g网络优化
  • 做ppt模板网站百度seo收录软件
  • wordpress怎么发布网站短视频营销的优势
  • 网站页面那个图怎么做免费下载百度
  • 做web网站需要做网络通信吗培训机构哪家好
  • 做网站优化要多少钱seo优化是什么
  • php动态网站开发的基本流程网页设计排版布局技巧
  • 广州网站建设品牌公司网站设计定制
  • 十大外贸网站企业网络营销成功案例
  • o2o网站建设新闻seo收录查询工具
  • 深圳高端网站建设网页设计网络推广都需要做什么
  • 网站搭建及应用教程百度新闻网页
  • 做网站程序看什么书电商运营模式
  • 网站开发详细设计编写网页的软件
  • 亚洲男女做暖网站做网站的外包公司
  • 免费试用网站制作seo职位描述
  • 类似一起做网店的网站百度竞价推广课程