package jihe;
class Student3
{
private String name;
private int age;
Student3(String name,int age)
{
this.setName(name);
this.setAge(age);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
class Worker
{
private String name;
private int age;
private String sex;
Worker(String name,String sex,int age)
{
this.name=name;
this.age=age;
this.sex=sex;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
class Tool//在没有泛型之前是使用的这种利用Object类
{
private Object obj;
public void setObject(Object obj)
{
this.obj=obj;
}
public Object getObject()
{
return obj;
}
}
//泛型类,将错误表现在编译时,提高代码安全性
class Utils<E>
{
private E e;
public void setUtils(E e)
{
this.e=e;
}
public E getUtils()
{
return e;
}
}
public class FanXinglei {
public static void main(String [] args)
{
/*Tool t=new Tool();
t.setObject(new Student3("小红",20));
Student3 s=(Student3)t.getObject();
Sop.sop(s.getName()+"..."+s.getAge());*/
Utils<Worker> u=new Utils<Worker>();
u.setUtils(new Worker("小红","女",20));
Worker w=u.getUtils();//此处不用再强制转换类型
Sop.sop(w.getName()+" "+w.getSex()+" "+w.getAge());
}
}
(泛型)FanXinglei
最新推荐文章于 2022-10-16 20:37:43 发布
本文通过具体的Java代码示例介绍了泛型的使用方法,对比了使用泛型前后代码的变化,展示了泛型如何提高代码的安全性和复用性。通过Student和Worker类的实例,说明了泛型在实际开发中的应用。

263

被折叠的 条评论
为什么被折叠?



