Java泛型

Java泛型

1.声明

class 名称 <泛型列表> 如:

class People <E>

这样声明的类称为泛型类。

注意事项:

  • 泛型列表给出的泛型可以作为类的成员变量的类型、方法的类型、局部变量的类型。
  • 泛型可以是任何接口或对象,但不能是基本数据类型。

使用泛型的目的:

​ 建立具有类型安全的数据结构如链表、散列映射等。

​   (在使用这些泛型类建立的数据结构时不必进行强制类型转换,即不要求进行运行时类型检查。)

2.例子

public class Circle {
    double area,radius;
    Circle(double radius){
        this.radius=radius;
    }
    @Override
    public String toString(){
        return ""+radius*radius*Math.PI;
    }
}
public class Rect {
    double sideA,sideB,area;
    public Rect(double a,double b){
        sideA=a;
        sideB=b;
    }
    @Override
    public String toString(){
        return ""+sideA*sideB;
    }
}
public class Cone <E> {
    double height;
    E bottom;
    public Cone (E b){
        bottom=b;
    }
    public void setHeight(double h){
        height=h;
    }
    public double computerVolume(){
        String s=bottom.toString();
        double area =Double.parseDouble(s);
        return 1.0/3.0*area*height;
    }
}
public class Main {

    public static void main(String[] args) {
   // write your code here
        Circle circle=new Circle(10);
        Cone<Circle> coneOne=new Cone<Circle>(circle);
        coneOne.setHeight(16);
        System.out.println(coneOne.computerVolume());
        Rect rect=new Rect(3,3);
        Cone<Rect> coneTwo=new Cone<Rect>(rect);
        coneTwo.setHeight(3);
        System.out.println(coneTwo.computerVolume());
    }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值