读书人

请帮小弟我看看这个通配符泛型错在哪里

发布时间: 2013-12-07 22:19:20 作者: rapoo

请帮我看看这个通配符泛型错在哪里?

                                                                            
[解决办法]
你把方法定义到main函数干嘛??
[解决办法]

public static void main(String[] args)
{
Employee a = new Employee("abc", 2000);
Employee b = new Employee("efg", 6000);

A<Employee> c = new A<Employee>(a ,b);



}
public static void printC(A<? extends Employee> p)
{
Employee first = p.getFirst();
Employee second = p.getSecond();
}

语法错误
[解决办法]
import java.util.*;

public class Test2
{
public static void main(String[] args)
{
Employee a = new Employee("abc", 2000);
Employee b = new Employee("efg", 6000);

A<Employee> c = new A<Employee>(a ,b);



}
public static void printC(A<? extends Employee> p)
{
Employee first = p.getFirst;
Employee second = p.getSecond;
}
}

class A<T>
{
public A(T first, T second)
{
this.first = first;
this.second = second;
}

public T getFirst()
{
return first;
}

public T getSecond()
{
return second;
}

public void setFirst(T newValue)
{
first = newValue;


}

public void setSecond(T newValue)
{
second = newValue;
}
private T first;
private T second;
}

class Employee
{
String name;
double salary;

public Employee(String name, double salary)
{
this.name = name;
this.salary = salary;
}
}


[解决办法]
你这方法不要在main方法里面定义。。
[解决办法]
<? extend T> p 表示 p只能是T类型或T的子类的类型
<? super T> p 表示 p只能是T类型或T的父类类型直至Object类型

读书人网 >J2SE开发

热点推荐