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

wordpress 作品集网站嵌入式软件开发工程师招聘

wordpress 作品集网站,嵌入式软件开发工程师招聘,深圳哪家网站建设公司好,怎么找做网站的客户目录 泛型的理解#xff1a; 在ArrayList中使用泛型#xff1a; 在Map中使用泛型#xff1a; 在接口中使用泛型#xff1a; 自定义泛型类/接口与自定义泛型方法 自定义类/接口#xff1a; 关于泛型类的子类#xff1a; 注意点#xff1a; 注意点#xff1a; 自…目录 泛型的理解 在ArrayList中使用泛型 在Map中使用泛型 在接口中使用泛型 自定义泛型类/接口与自定义泛型方法 自定义类/接口 关于泛型类的子类 注意点 注意点 自定义泛型方法 泛型在继承上的体现以及通配符的使用 泛型在继承上的体现 通配符的使用 关于使用通配符的类的对象的操作 有限制条件的通配符 泛型的理解 泛型就是允许在定义类、接口时通过一个标识表示类中某个属性的类型或某个方法的返回值或参数的类型。这个类型参数将在使用时例如继承或实现这个接口、创建对象或调用方法时确定即传入实际的类型参数也称为类型实参。 集合中不使用泛型可能会 ·类型不安全因为add( )在没有泛型时参数是Object类型的意味着任何类型的对象都可以添加成功。 ·需要频繁地进行强转操作。可能会出现类型转换异常。 在集合中使用泛型 在ArrayList中使用泛型 ListInteger ll new ArrayListInteger(); ll.add(78); ll.add(89); ll.add(80); ll.add(34);IteratorInteger ii ll.iterator(); while(ii.hasNext()) {Integer i ii.next();int score i;System.out.println(i); } 此处用泛型限制ll集合中只能添加Integer类型的参数。 new对象时的后面的里的泛型的类型可以不写因为会通过前面的声明处的泛型类型自行推断。 在Map中使用泛型 //jdk7的特性类型推断即以下的后面的尖括号不用写泛型类型会自行推断。HashMapString,Integer map new HashMap();map.put(aa,11);map.put(bb,22);map.put(cc,33);// IteratorMap.EntryString,Integer ii map.entrySet().iterator(); // while(ii.hasNext()) // { // Map.EntryString,Integer ee ii.next(); // System.out.println(ee.getKey() -- ee.getValue()); // }//var也属于类型推断。var ii map.entrySet().iterator();while(ii.hasNext()){var ee ii.next();System.out.println(ee.getKey() -- ee.getValue());}} 此处的map的调用entrySet之后的返回值对象的类型应该是Map.EntryString,Integer类型所以泛型里的类型应该是Map.EntryString,Integer在新特性中可以使用var代替声明进行类型推断。 jdk5.0中集合框架在声明接口和实现类时使用了泛型在实例化集合对象时如果没有使用泛型则认为操作的时Object类型的数据。如果使用了泛型则需要指明泛型的具体类型。一旦指明了泛型的具体类型则在集合的相关方法中凡是使用泛型的位置都替换为具体的泛型类型。 在接口中使用泛型 例如在声明处实现Comparable和Comparator时加上,并指明泛型类型相应的CompareTo方法和Compare方法的参数也就与泛型的参数一致只能限制为指定的类型。 自定义泛型类/接口与自定义泛型方法 自定义类/接口 class AT{ } interface BT{ } 说明以泛型类为例 泛型类实例化时若不指明相关的泛型参数类型则默认为泛型参数的类型为Object类型。实例化时可以指明泛型参数的类型一旦指明了泛型的类型则在泛型类中使用泛型参数的位置都替换为指定的类型。 关于泛型类的子类 若父类Order的声明为 public class OrderT 关于泛型类的子类的声明主要有五种情况以下的父类都是指某个泛型类 ①子类和父类名处都不写 public class SubOrder extends Order 此时的 SubOrder 不是泛型类相当于继承已经确定了泛型参数类型为 Object 的Order。 ②子类名处不写父类名处的里指明类型。 public class SubOrder2 extends OrderInteger 也不是泛型类因为继承的是已经指明了泛型参数类型为 Integer 的 Order 已经确定了指定的地方的类型就是 Integer。 ③子类和父类名处都写且其中内容都是相同的不指明类型的参数比如都为T。 public class SubOrder3T extends OrderT 此时的子类是泛型类 此时的两个 T 是相对应的。父类中用泛型参数 T 限制的地方继承到子类还是按相应 T的类型来确定。 ④子类名和父类名处都写子类中的是不指明类型的参数父类中的指明参数类型。 public class SubOrder4E extends OrderInteger 此时的子类是泛型类继承时父类中的使用泛型参数的地方继承到子类后泛型参数变为了上面 extend 声明后面的 中的类型。而 E 是指子类中其他的地方要用到泛型来限制类型与 extend 后面的 的内容无关。 ⑤子类和父类名处都写且其中有内容都是相同的不指明类型的参数的基础上子类名处的中用逗号分隔加上其他的不指明类型的参数。 public class SubOrder5T,V extends OrderT 此时的前后两个 T 是相对应的。而 V 是子类中除 T 之外有其他的地方要用到泛型来限制类型父类中继承过来的需要用 T 来限制类型的由 T 决定 V则限制子类中相应的其他地方的类型。 注意点 ①声明完自定义泛型类以后可以在类的内部比如属性、方法、构造器中使用类的泛型。 ②创建自定义泛型类的对象时可以指明泛型参数类型。一旦指明内部凡是使用类的泛型参数的位置都具体化为指定的类的泛型类型。 ③如果在创建自定义泛型类的对象时没有指明泛型参数类型那么泛型将被擦除泛型对应的类型均按照Object处理但不等价于Object。 ④泛型的指定中必须使用引用数据类型。不能使用基本数据类型此时只能使用包装类替换。 ⑤除创建泛型类对象外子类继承泛型类时、实现类实现泛型接口时也可以确定泛型结构中的泛型参数。如果给泛型类提供子类时子类也不确定泛型的类型则可以继续使用泛型参数。还可以在现有的父类的泛型参数的基础上新增泛型参数。 注意点 ①泛型类可能有多个参数此时应将多个参数一起放在尖括号内。比如E1,E2,E3 ②JDK7.0开始泛型的简化操作ArrayListFruit flist new ArrayList( ); ③如果泛型结构是一个接口或抽象类则不可创建泛型类的对象。 ④不能使用new E[ ]。但是可以E[ ] elements (E[ ])new object[capacity]; 参考ArrayList源码中声明Object[ ] elementData而非泛型参数类型数组。 ⑤在类/接口上声明的泛型在本类或本接口中即代表某种类型但不可以在静态方法中使用类的泛型。 ⑥异常类不能是带泛型的。 自定义泛型方法 格式 权限修饰符 E 返回值类型 方法名(形参列表){         //通常在形参列表或返回值类型的位置会出现泛型参数T } 说明 ①声明泛型方法时一定要添加泛型参数T ②泛型参数在调用时指明具体的参数类型 ③泛型方法可以根据需要声明为静态的 ④泛型方法在泛型类或不是泛型类都可以。 泛型在继承上的体现以及通配符的使用 泛型在继承上的体现 GsuperA与GA若superA是A的父类并没有子父类的关系它们是两个并列的无关联类不能体现多态性。 SuperAE与AE的关系是子父类的关系可以体现多态性。 通配符的使用 通配符? 格式A?     若A是一个泛型类 此格式代表不确定A的泛型类型的类型此类型是A的所有确定泛型类型的类型的父类可以与其他确定泛型类型的类型体现多态性。 关于使用通配符的类的对象的操作 读取数据由于读取的数据类型不确定所以读取的数据的操作都是返回Object类型。 写入数据由于数据类型不确定使用通配符的类的对象不能写入数据特例可以添加null只能通过多态性接收其他对象的数据。 接受其他对象的数据可以看作将AE的对象赋值给G?的引用。 有限制条件的通配符 A? extend B 可以将AB的子类或B类的对象赋值给A? extend B的引用。 A? super B 可以将AB的父类或B类的对象赋值给A? super B的引用。
http://wiki.neutronadmin.com/news/58783/

相关文章:

  • 杭州酒店网站建设方案如何在自己网站做直播
  • 做一个自己的网站网站建议怎么写
  • 企业网站上的工资表怎么做cn域名与com域名
  • 网站建设公司的公司微信开发者社区
  • 合肥哪里有建站公司某些网站域名解析错误
  • 备案时暂时关闭网站医院为什么要做门户网站建设
  • 空间网站大全国外交易平台
  • 求购信息网站绍兴网站建设制作
  • 网站管理系统制作泰国浪琴手表网站
  • 网站建设评选打分长春网站排名提升
  • 怎样做美食网站解决方案网站设计
  • 云酒店网站建设网站的栏目管理
  • 网站屏蔽右键破解app免费下载大全
  • 网站建设与运营课程总结网站建设第一品牌 网站设计
  • 网站建设公司的客户网站品牌推广公司
  • 网站首页的尺寸wordpress google统计
  • 网站托管运营阜宁住房和城乡建设局网站
  • 和小孩做的网站wordpress wiki 皮肤
  • 哪个酒店网站做的好看的沧州网站艰涩很
  • 个人备案的网站涉及到资金html网页设计模板免费下载
  • 什么叫网站建设服务网站建公司简介
  • 韩国优秀电商网站阿里云网站空间做商城流程
  • 电子商务网站建设规划报告怎么看别人网站怎么做的优化
  • 做pc网站排名网页设计与制作简介
  • 塘厦镇做网站做网站 钱
  • 十堰网站建设报价合肥外贸网站建设公司排名
  • 汽车4s销售网站模板装修网线用几类
  • 网站模版整站下载网站建设工程
  • 旅游网站开发工具伊春市住房和城乡建设局网站
  • 邵东微网站建设做网站建设推广好做吗