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

现货行情分析软件app谷歌网站优化推广

现货行情分析软件app,谷歌网站优化推广,网站解析是做a记录吗,技术开发公司有哪些Java中的泛类 Java 的泛型(Generics)是一种语言特性,允许你定义类、接口和方法时使用类型参数。这使得代码更具可读性和安全性,因为编译器能够在编译时检查类型,而不是在运行时。 泛型类 定义泛型类时,可…

Java中的泛类


Java 的泛型(Generics)是一种语言特性,允许你定义类、接口和方法时使用类型参数。这使得代码更具可读性和安全性,因为编译器能够在编译时检查类型,而不是在运行时。

泛型类

定义泛型类时,可以使用类型参数。例如:

public class Box<T> {private T content;public void setContent(T content) {this.content = content;}public T getContent() {return content;}
}

在这里,T 是一个类型参数,可以在类的任何地方使用。当你创建 Box 的实例时,可以指定实际的类型参数:

Box<String> stringBox = new Box<>();
stringBox.setContent("Hello");
String content = stringBox.getContent();

泛型方法

你还可以在方法中使用泛型。例如:

public class Util {public static <T> void printArray(T[] array) {for (T element : array) {System.out.println(element);}}
}

调用泛型方法时,可以显式或隐式地指定类型参数:

String[] stringArray = {"A", "B", "C"};
Util.printArray(stringArray);

泛型接口

接口也可以是泛型的。例如:

public interface Pair<K, V> {public K getKey();public V getValue();
}

然后实现这个接口:

public class OrderedPair<K, V> implements Pair<K, V> {private K key;private V value;public OrderedPair(K key, V value) {this.key = key;this.value = value;}public K getKey() { return key; }public V getValue() { return value; }
}

使用泛型接口时,指定类型参数:

Pair<String, Integer> pair = new OrderedPair<>("key", 123);

通配符

Java 泛型提供了通配符,用于处理泛型类型的未知类型。

无界通配符

表示可以是任何类型:

public void printList(List<?> list) {for (Object elem : list) {System.out.println(elem);}
}
有界通配符

表示类型的上下限:

// 上界通配符:表示类型必须是 Number 或其子类
public void processList(List<? extends Number> list) {// ... code ...
}// 下界通配符:表示类型必须是 Integer 或其超类
public void addIntegers(List<? super Integer> list) {// ... code ...
}

泛型的优点

  1. 类型安全:在编译时进行类型检查,减少了类型转换错误。
  2. 重用代码:通过泛型,代码可以适用于多种数据类型。
  3. 提高可读性:泛型代码更具可读性,因为它明确了使用的类型。

类型擦除

在运行时,所有的泛型类型信息都会被移除,这个过程称为类型擦除。编译器在编译时会进行类型检查和转换,但在运行时,所有的泛型类型都被转换为 Object 或其边界类型。例如:

public class Box<T> {private T content;public void setContent(T content) {this.content = content;}public T getContent() {return content;}
}

编译后:

public class Box {private Object content;public void setContent(Object content) {this.content = content;}public Object getContent() {return content;}
}

示例

这里是一个完整的例子,展示了泛型类、泛型方法和通配符:

import java.util.ArrayList;
import java.util.List;public class Main {public static void main(String[] args) {// 泛型类Box<String> stringBox = new Box<>();stringBox.setContent("Hello");System.out.println(stringBox.getContent());// 泛型方法List<Integer> intList = new ArrayList<>();intList.add(1);intList.add(2);Util.printList(intList);// 通配符List<Number> numberList = new ArrayList<>();numberList.add(1);numberList.add(1.5);processList(numberList);}public static void processList(List<? extends Number> list) {for (Number num : list) {System.out.println(num);}}
}class Box<T> {private T content;public void setContent(T content) {this.content = content;}public T getContent() {return content;}
}class Util {public static <T> void printList(List<T> list) {for (T element : list) {System.out.println(element);}}
}

这个示例展示了如何使用泛型类、方法和通配符来创建类型安全和可重用的代码。

http://www.yayakq.cn/news/166600/

相关文章:

  • 网站建设 需求模板建设银行网站怎么查工资明细
  • 移动端模板网站建设惠州网站制作询问薇
  • lol网站怎么做龙岩新罗区建设局网站
  • 网站仿造深圳高端营销网站模板
  • 专业网站制寻乌网站建设
  • 长沙本土网站制作公司做的好的营销型网站有哪些
  • 佛山网站建设a068北京网页制作费用大概多少
  • 小型电子商务网站开发什么是电子商务系统
  • 杭州网站建设教育机构智慧工厂管理系统
  • 快站怎么搭建淘客链接公司网站怎么更新维护
  • 广西建设工程质量安全监督总站网站5分钟建站wordpress
  • 网站开发需求分析word网页游戏开发需要学什么
  • 星外网站开发介绍重庆网页设计
  • 帝国cms添加网站地图知名的网站设计公司
  • 建站网络公司单品网站模板
  • 如何用七牛云做视频网站做网站想注册商标是哪一类
  • 凡科网怎么创建网站深圳网站开发的公司
  • 外贸做网站用什么网站开发运行详细步骤
  • 网站建设的意义怎么写免费网站电视剧全免费的app
  • 手机网站建设需要多少钱企业如何做好网站运营
  • 辽宁住房与城乡建设厅网站wordpress驳回评论
  • 专门做2次元图片的网站wordpress swf
  • 外汇平台 网站开发客栈网站建设代码
  • 兰州市城关区建设局网站哪个网站做招聘海报比较好
  • 西充县建设路小学网站做购物网站能不能赚钱
  • 中企高呈网站建设阿芹网站建设
  • app开发网站建设及开发wordpress首页摘要设置
  • 买域名去哪个网站为什么要用模板建站
  • asp.net+制作网站开发网络设计课程心得体会600字
  • WordPress网站被恶意登录华为用了哪些网络营销方式