一 泛型(Generic)
1 泛型介绍
1 泛型是在JDK1.5以后增加的新功能。泛型(Generic)
2 泛型可以解决数据类型的安全性问题,主要的原理,是在类声明的时候通过一个标识,表示类中某个属性的类型或者是某个方法的返回值及参数类型。
3 格式:
访问权限 class 类名称<泛型,泛型...>{
属性
方法
}
4 对象的创建
类名称<具体类型> 对象名称 = new 类名称<具体类型>();
一般表示泛型使用大写的字母 T 。
5 例子不使用泛型以前,怎么定义地球上的经纬度呢?
package com.bank.generic; import java.util.ArrayList; import java.util.List; /** * 地球经纬度 * * */ class Point{ private Object x; private Object y; public Object getX() { return x; } public void setX(Object x) { this.x = x; } public Object getY() { return y; } public void setY(Object y) { this.y = y; } } public class GenericDemo { public static void main(String[] args) { Point point = new Point(); point.setX(10.1f); point.setY(20); float px = (float) point.getX(); int py = (int) point.getY(); System.out.println("px=" + px+",py=" + py); } }
使用泛型改造后的例子。
package com.bank.generic; /** * 地球经纬度 * * */ class Point<T>{ private T x; private T y; public T getX() { return x; } public void setX(T x) { this.x = x; } public T getY() { return y; } public void setY(T y) { this.y = y; } } public class GenericDemo { public static void main(String[] args) { Point<Integer> point = new Point<Integer>(); Point<String> point2 = new Point<String>(); point.setX(10 ); point.setY(20); int px = point.getX(); int py = point.getY(); System.out.println("px=" + px+",py=" + py); } }
时间: 2024-11-04 19:00:27