Android java基础_泛型

一.java泛型是什么

Java 泛型(Generic)是 Java 5 中引入的一种特性,它允许类、接口和方法在定义时使用一个或多个类型参数,这些类型参数在调用时会被实际类型替换,从而增强了代码的重用性和类型安全性。通过使用泛型,我们可以编写出更加通用的代码,同时也可以减少代码中的强制类型转换操作,提高代码的可读性和可维护性。

在 Java 泛型中,我们可以使用以下符号来定义泛型:

<T>:表示定义一个类型参数 T,可以是任何标识符,通常用大写字母表示,例如 List。

<E>:表示定义一个元素类型参数 E,通常用于集合类中,例如 List。

<K, V>:表示定义一个键值对类型参数 K 和 V,通常用于 Map 类中,例如 Map<K, V>。

在使用泛型时,可以将实际类型作为参数传递给泛型,例如 List,这样就可以创建一个只能存储 String 类型元素的列表。泛型在 Java 中的实现方式是使用类型擦除技术,即在编译时将泛型类型转换为原始类型,从而避免了类型检查的开销和运行时的类型转换。

二.普通的泛型类

复制代码
class Person<T> {
	private T age;

	public void setAge(T age) {
		this.age = age;
	}

	public T getAge() {
		return this.age;
	}
}

public class Generics {
	public static void main(String args[]) {
		Person<String> p = new Person<String>();
		p.setAge("3 years old");
		System.out.println(p.getAge());

		Person<Integer> p2 = new Person<Integer>();
		p2.setAge(3);
		System.out.println(p2.getAge());

	}
}

运行结果:

复制代码
root@ubuntu:/home/topeet/guyilian# javac Generics.java 
root@ubuntu:/home/topeet/guyilian# java Generics
3 years old
3
相关推荐
暗武逢天2 小时前
Java导出写入固定Excel模板数据
java·导出数据·easyexcel·excel固定模板导出
摇滚侠2 小时前
Spring Boot3零基础教程,KafkaTemplate 发送消息,笔记77
java·spring boot·笔记·后端·kafka
杯莫停丶3 小时前
设计模式之:模板模式
开发语言·设计模式
开发者小天3 小时前
调整为 dart-sass 支持的语法,将深度选择器/deep/调整为::v-deep
开发语言·前端·javascript·vue.js·uni-app·sass·1024程序员节
老猿讲编程4 小时前
C++中的奇异递归模板模式CRTP
开发语言·c++
fat house cat_5 小时前
【netty】基于主从Reactor多线程模型|如何解决粘包拆包问题|零拷贝
java·服务器·网络·netty
zhangphil5 小时前
HARDWARE 属性的Bitmap与普通Bitmap,GPU与RenderThread渲染与处理方式异同比较,Android
android
青云交5 小时前
Java 大视界 -- Java 大数据在智能教育学习社区互动模式创新与用户活跃度提升中的应用(426)
java·大数据·学习·flink 实时计算·智能教育社区·互动模式创新·用户活跃度
神奇的海马体5 小时前
Tomcat隐藏版本号
java·tomcat
拜见老天師6 小时前
使用mybatis-plus,实现将排序时,字段值为NULL的数据排在最后
java·mybatis