| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> Java——泛型 -> 正文阅读 |
|
[Java知识库]Java——泛型 |
泛型,即
“
参数化类型
”
。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实
参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类似于方法
中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用
/
调用时传入具
体的类型(类型实参)。
泛型的本质是为了参数化类型(在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参
具体限制的类型)。也就是说在泛型使用过程中,操作的数据类型被指定为一个参数,这种参数类
型可以用在类、接口和方法中,分别被称为泛型类、泛型接口、泛型方法。
很抽象对不对?别急,后面还有更抽象的(bushi
看个例子应该会好理解一些~
import
java
.
util
.
ArrayList
;
import
java
.
util
.
List
;
public class
test
{
public static
void
main
(
String
[]
args
) {
List list
=
new
ArrayList
();
list
.
add
(
"string"
);
list
.
add
(
100
);
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++
) {
String
name
=
(
String
)
list
.
get
(
i
);
// 1
System
.
out
.
println
(
"name:"
+
name
);
}
}
}
上述代码会出现
Exception in thread "main" java.lang.ClassCastException
错误
ArrayList
由
String
类型和
Integer
类型,而两者都以
String
格式使用,所以出现了上述错误。
这个时候泛型——闪亮登场!!
List
<
String
>
list
=
new
ArrayList
<
String
>
();? #注意!这一行替换源代码的第四行——用到了泛型
泛型接口啥的好复杂,还没来得及整明白~今天Java闭营啦,但是还需努力,加油⑧!!
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/29 7:40:44- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |