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

工作室网站建设费用价格儿童教育机构网页设计素材

工作室网站建设费用价格,儿童教育机构网页设计素材,网站内容全屏截屏怎么做,好的h5制作网站模板文章目录 什么是泛型#xff1f;泛型的声明泛型的使用泛型方法通配符和泛型上下界1#xff09;通配符2#xff09;泛型上下界 泛型的好处注意事项 泛型提供了一种在编写代码时更好地 支持类型安全的机制。通过泛型#xff0c;我们可以编写更加 通用、 灵活、 可读性高的… 文章目录 什么是泛型泛型的声明泛型的使用泛型方法通配符和泛型上下界1通配符2泛型上下界 泛型的好处注意事项 泛型提供了一种在编写代码时更好地 支持类型安全的机制。通过泛型我们可以编写更加 通用、 灵活、 可读性高的代码同时 减少类型转换和运行时错误。 什么是泛型 泛型Generics是一种参数化类型的概念 它使得我们可以编写能够适用于多种类型的代码而不是为每种类型都写一份代码。泛型提供了编译时的类型检查使得代码更加安全并且减少了在运行时进行频繁的类型转换 例如 我们之前有为很多箱子都贴上了固定的标签 装 苹果老鼠小狗因为不能放一起呀虽然狗现在已经不多管闲事去拿耗子啦_ 有多少种类就需要多少箱子新增加一个就需要再增加就很麻烦 于是我们想到了箱子不贴固定的名称来一种就装一种这样就不需要为每一种单独定义一个标签啦 之前的 苹果老鼠小狗等等箱子就是具体的类型。而后来的 东西就是一个泛型。 泛型的声明 在 Java 中泛型主要通过在类、接口、方法中使用泛型类型参数来实现。 下面就使用泛型去定义一个箱子 // 定义一个泛型类比如这就是一个装东西的箱子 class BoxT {private T value;public void setValue(T value) {this.value value;}public T getValue() {return value;} }上述代码中Box 类使用了泛型类型参数 T使得这个类可以存储和返回任意类型的数据。 泛型的使用 使用上面已经定义好的箱子去装各种各样的东西 先往里装一种类型的东西如老鼠 public static void main(String[] args) {// 可以往箱子里装 int 型数字比如这就是老鼠BoxInteger integerBox new Box();integerBox.setValue(42);int intValue integerBox.getValue();System.out.println(intValue);}输出结果42 再往里装另一种类型的东西如小狗 public static void main(String[] args) {// 还可以往箱子里装 String 型的字符比如这就是小狗BoxString stringBox new Box();stringBox.setValue(哈士奇);String stringValue stringBox.getValue();System.out.println(stringValue);}输出结果哈士奇 泛型方法 除了泛型类Java 还支持泛型方法。泛型方法可以在普通类中定义也可以在泛型类中定义。 以下是一个简单的泛型方法的例子 // 定义一个泛型方法 public static E void printBoxSaveWhat(E e) {System.out.println(箱子里装的是: e); } // 使用泛型方法 public static void main(String[] args) {// 打印第一种类型printBoxSaveWhat(42);// 打印外一种类型printBoxSaveWhat(哈士奇); } 输出结果 箱子里装的是: 42 箱子里装的是: 哈士奇 上述代码中printBoxSaveWhat 方法是一个泛型方法可以接受任意类型的参数。在使用时编译器会根据传入的实际参数类型进行类型推断。 通配符和泛型上下界 Java 泛型还引入了通配符和泛型上下界的特性。 1通配符 用于表示未知类型 示例代码 // 使用通配符 public static void printValues(List? values) {for (Object value : values) {System.out.println(value);} }public static void main(String[] args) {System.out.println(开始打印 整数);ListInteger integers Arrays.asList(1, 2, 3);printValues(integers);System.out.println(开始打印 小数);ListDouble doubles Arrays.asList(1.1, 2.2);printValues(doubles); }输出结果 开始打印 整数 1 2 3 开始打印 小数 1.1 2.2 在上述代码中printValues 方法使用了通配符 ?允许接受任意类型的 List。 2泛型上下界 用于限定泛型类型的范围 示例代码 // 使用泛型上下界 public static T extends Number double sum(ListT numbers) {double total 0;for (T number : numbers) {total number.doubleValue();}return total; }public static void main(String[] args) {ListInteger integers Arrays.asList(1, 2, 3, 4, 5);System.out.println(整数的加和结果是: sum(integers));ListDouble doubles Arrays.asList(1.1, 2.2, 3.3, 4.4);System.out.println(小数的加和结果是: sum(doubles)); }输出结果 整数的加和结果是: 15.0 小数的加和结果是: 11.0 在上述代码中 sum 方法使用了泛型上下界 T extends Number表示只能接受 Number 类型或其子类型 泛型的好处 类型安全 泛型提供了编译时的类型检查避免了在运行时发生类型错误的可能性。代码复用 泛型允许编写通用的代码适用于多种数据类型提高了代码的复用性。可读性和可维护性 使用泛型能够使代码更加清晰、简洁提高了代码的可读性和可维护性。 注意事项 类型擦除 泛型在编译时会进行类型擦除即泛型信息在运行时被擦除转换为原始类型。这可能导致一些限制例如不能直接创建泛型数组。通配符限制 使用通配符 ? 时只能读取无法修改泛型集合中的元素。如果需要修改可以使用 ? extends T 或 ? super T。泛型和继承 泛型不支持协变covariant和逆变contravariant。例如List 不是 List 的子类型。原始类型和泛型混用 尽量避免在泛型代码中使用原始类型以保持类型安全。 用通配符 ? 时只能读取无法修改泛型集合中的元素。如果需要修改可以使用 ? extends T 或 ? super T。 泛型和继承 泛型不支持协变covariant和逆变contravariant。例如List 不是 List 的子类型。原始类型和泛型混用 尽量避免在泛型代码中使用原始类型以保持类型安全。 在实际编程中合理利用泛型可以使代码更加健壮、灵活但也需要注意一些泛型的特性和限制。通过了解和熟练使用泛型可以写出更加清晰、安全和可维护的 Java 代码。
http://www.hkea.cn/news/14261519/

相关文章:

  • 门户网站开发技术 知乎医院网页
  • 揭阳公司做网站百度快照提交
  • 个人网站页面模板后缀的域名暂无法进行网站备案
  • wordpress登录会员中心温州seo网站推广
  • app软件开发就是网站开发吗企业seo价格查询价格
  • phton可以做网站吗沈阳网站建设公司的公司
  • 淄博培训网站建设奉贤做网站的
  • 中企动力建设的网站如何修改怎么做网站平台梦想
  • wordpress建外贸网站wordpress插件无法启用
  • 微博网站建设用数据库做网站
  • 黑龙江建设教育信息网站首页购买网站需要注意什么
  • 网站制作公司备案晋安福州网站建设
  • 微商城网站建设方案做课宝官方网站
  • 校园网站建设说明书做网站送域名和邮箱
  • 商洛市商南县城乡建设局网站杭州建站
  • 云南省建设厅标准员网站沈阳建设工程信息网 最佳中项网
  • 网站优化公司方案seo 温州
  • 免费查公司信息的网站福建省百川建设发展有限公司网站
  • 营销方案网站什么网站做产品销售做的好
  • cvv钓鱼网站怎么做网站建设前端工具
  • 网站最新一次改版时间什么意思徐州集团网站建设方案
  • 哪个网站企业邮箱最好广州番禺最新头条消息
  • 申报课题所需的网站怎么做建筑培训网排行榜
  • 可以做puzzle的网站自己开加工厂怎么找订单
  • 做百度移动网站吗摄图网官网
  • 南京网站制作招聘优秀策划设计网站
  • 织梦可以仿所有网站吗长沙seo报价
  • 个人小说网站怎么做建网站咨询
  • 网站开发都需要学什么写一篇软文1000字
  • 做护肤品好的网站好杭州正规引流推广公司