Java 泛型

本文介绍了泛型的概念及其在编程中的应用,解释了如何使用泛型提高代码的复用性和安全性。并通过示例展示了泛型类、泛型接口和泛型方法的具体实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

什么是泛型。(泛型是可以表示好多个类型的类型)
泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这是数据类型可以
用在类。接口和方法中。分别称为泛型类,泛型方法,泛型接口。泛型的好处是在编译的时候
检查类型安全,并且强制所有的转换都是自动的隐式的。提高代码的重用率

package FanXing;
import java.util.ArrayList;
/**
* Created by admin on 2017/6/24.
* 介绍泛型
*
*/
public class FanXing {
public static void main(String[] args){
// ArrayList声明 里面存放的是Cat类
ArrayList array = new ArrayList();
// 创建一个猫类
Cat cat = new Cat();
// 将这个猫类,放到ArrayList当中, 此时ArrayList里面存放的是猫的对象
array.add(cat);
Cat myCat = array.get(0);
System.out.println(myCat.getName());

}

}
class Dog{
private String color;
private String name;
public String getName(){
return name;
}
public String getColor(){
return color;
}
public void setName(String newName){
name=newName;
}
}

class Cat{
private String name;
private int age;
public String getName(){
return name;
}
public void setName(String newName){
name = newName;
}
public int getAge(){
return age;
}
}

使用泛型提高代码的复用率,假设你现在面临一个需求是,你需要接收两个参数,然后将这个参数
组成键值对。 但是你又不知道这两个参数是什么类型的。可能你就会这么写。先判断一下数据是什么
类型,然后调用不同的方法.比如类似于下面的
这样代码的就会变得很冗余。

class stringDict{
     private String key;
     private String val;
     public String get(){
       return val;
     }
     public void set(String key, String val){
       val = val;
     }
}

class intDict{
     private int key;
     private int val;
     public int get(){
       return val;
     }
     public void set(int key, int val){
       val = val;
     }
}

通过泛型来解决:

class Dict<K, V>{
     private K key;
     private V val;
     public V get(){
       return val;
     }
     public void set(K key, V val){
       val = val;
     }
}

泛型的优点
1. 类型安全
2.向后兼容
3.层次清晰
4.性能较高

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值