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

广告模板网站在阿里云做网站教程

广告模板网站,在阿里云做网站教程,网站建设设计收费,iis 网站模板下载泛型 1. 认识泛型 定义类、接口、方法时#xff0c;同时声明了一个或多个类型变量#xff08;如#xff1a;#xff09;#xff0c;称为泛型类、泛型接口、泛型方法、它们统称为泛型。 2. 泛型类 public class Test {public static void main(String[] args) {MyArray…泛型 1. 认识泛型 定义类、接口、方法时同时声明了一个或多个类型变量如称为泛型类、泛型接口、泛型方法、它们统称为泛型。 2. 泛型类 public class Test {public static void main(String[] args) {MyArrayListString list new MyArrayList();System.out.println(list.add(Jack)); // trueSystem.out.println(list.get(0)); // Jack} }// 自定义一个泛型类去模拟 ArrayList class MyArrayListE { // 如果不想规范地写其实E也可以写成其他字母private Object[] arr new Object[10]; // 容器用来装东西private int size; // 记录当前装了多少个public boolean add(E content) {arr[size] content;return true;}public E get(int index) {return (E) arr[index];} }public class Test {public static void main(String[] args) {MyClassString, String obj new MyClass();obj.put(只能是String类型, 只能是String类型); // OthersString obj1 new Others(); // 报错OthersMyClass obj2 new Others(); // 正常System.out.println(obj2.age); // 输出结果0} }class MyClassE, T {public void put(E e, T t) {} }// 要求 E 的类型是继承 MyClass 或者 E 的类型是 MyClass class OthersE extends MyClass {public int age; }3. 泛型接口 注意类型变量建议用大写的英文字母常用的有E、T、K、V 等 import java.util.ArrayList;public class Test {public static void main(String[] args) {} }class Student {}class Teacher {}// 泛型接口 interface DataE {void add(E obj);ArrayListE getByName(String name);}// 实现类 class StudentData implements DataStudent {Overridepublic void add(Student obj) {}Overridepublic ArrayListStudent getByName(String name) {return null;} }// 实现类 class TeacherData implements DataTeacher {Overridepublic void add(Teacher obj) {}Overridepublic ArrayListTeacher getByName(String name) {return null;} }4. 泛型方法 案例一 public class Test {public static void main(String[] args) {System.out.println(get(10)); // 10System.out.println(get(Java)); // JavaSystem.out.println(get(new A())); // 对象的内存地址: login.A3b07d329}// 泛型方法public static T T get(T name) {return (T) name;}// 泛型方法public static E void run(E index) {} }class A {}案例二 通配符就是 ? 可以在使用泛型的时候代表一切类型E T K V 是在定义泛型的时候使用 import java.util.ArrayList;public class Test {public static void main(String[] args) {// 需求实现所有的汽车都能一起参加比赛ArrayListCar cars new ArrayList();cars.add(new BMW());cars.add(new BENZ());go(cars);ArrayListBMW bmws new ArrayList();bmws.add(new BMW());bmws.add(new BMW());go(bmws);ArrayListBENZ benzs new ArrayList();benzs.add(new BENZ());benzs.add(new BENZ());go(benzs);ArrayListDog dogs new ArrayList();dogs.add(new Dog());dogs.add(new Dog()); // go(dogs); // 报错}// T是没有限制数据类型的泛型如果我们加一个限制条件不要让狗类进来可以这样写T extends Cars完整代码如下一行所示public static T extends Car void go(ArrayListT allCars) {}// 知识扩展// ? 是通配符在使用泛型的时候可以代表一切类型 ? extends Car 【上限】 ? super Car 【下限】 // public static void go1(ArrayList? extends Car allCars) {} // public static void go2(ArrayList? super Car allCars) {} }class Car {}class BMW extends Car {}class BENZ extends Car {}class Dog {}5. 注意事项 泛型是工作在编译阶段的一旦程序编译成 class 文件class 文件中就不存在泛型了这就是泛型擦除。泛型不支持基本数据类型只能支持对象类型引用数据类型 import java.util.ArrayList;public class Test {public static void main(String[] args) { // ArrayListint list1 new ArrayList(); // 报错ArrayListInteger list2 new ArrayList(); // 正常} }
http://www.huolong8.cn/news/340570/

相关文章:

  • 南宁江南区网站制作多少钱网站建设项目简介
  • 网站被抄袭南阳那里有做网站的
  • 网站模版参考校园网站开发目的
  • 模板建站与仿站哪个更好网址查询入口
  • 专做机械类毕业设计的网站彩票网站建设教程
  • 建设专业网站的价格佛山建站专
  • 建立一个网站需要花多少钱高新西区网站建设
  • 有引导的网站网络推广公司代理
  • js特效做的好的网站信阳 网站建设
  • 网站格局asp.net网站配置文件
  • 长春火车站最新消息上海千途网站建设
  • 网站用php与asp哪个好wordpress 4.4.1下载
  • 长沙网站制作哪网站优化的文章
  • 高校英文网站建设 文献综述12306网站开发商
  • 微信建设网站哪家好印刷电商网站开发
  • 如何用文档创建一个网站网站平台建设调研报告
  • 网站营销推广计划书8上的信息课做网站作业
  • 用树莓派做网站服务器可以自己制作动画的app
  • 怎么用dw英文版做网站网站建设课设总结报告
  • 建设部网站内装修标准网站运营与规划
  • 陕西中小企业网站建设推广赣县城乡规划建设局网站
  • 大庆室内设计公司排名长沙网站优化页面
  • 大学网站开发实验室建设方案看空间网站
  • 电子商务网站开发 刘兰娟关于建设官方网站的申请
  • 上海浦东网站建设菏泽网站建设方案
  • 帮朋友免费做网站小程序端
  • 自己做网站生意怎么样品牌建设怎么写
  • 福鼎网站建设怎么创建自己的购物平台
  • 网站备案用英文flash做ppt的模板下载网站有哪些
  • 网站怎么进入金戈枸橼酸西地那非