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
相关推荐
重生之后端学习7 分钟前
208. 实现 Trie (前缀树)
java·开发语言·数据结构·算法·职场和发展·深度优先
Sayuanni%38 分钟前
初阶_多线程2(线程安全)
java
Howie Zphile10 分钟前
# 组织增熵与全面预算管理的持续优化
java·大数据·数据库
清水白石00811 分钟前
从频繁“握手”到高效通行:Python 数据库连接池深度解析与调优实战
开发语言·数据库·python
我命由我1234513 分钟前
C++ EasyX 开发,MessageBox 函数参数问题:“const char *“ 类型的实参与 “LPCWSTR“ 类型的形参不兼容
c语言·开发语言·c++·后端·学习·visualstudio·visual studio
芒克芒克14 分钟前
深入浅出BlockingQueue(二)
java
识君啊15 分钟前
Java 栈 - 附LeetCode 经典题解
java·数据结构·leetcode·deque··stack·lifo
城东米粉儿15 分钟前
Android Condition 笔记
android
shehuiyuelaiyuehao17 分钟前
关于hashset和hashmap,还有treeset和treemap,四个的关系
java·开发语言
马尔代夫哈哈哈19 分钟前
Spring AOP
java·后端·spring