我创建了几个类,并在尝试访问其中一个类变量的返回值时得到Null:
public interface Provider {
Iterator<Test> getData();
}
class A implements Provider{
public String id;
@Override
public Iterator<Test> getData() {
id="111";
return tcaselist.iterator();
}
class B extends A{
String getId() {
return new A().id;
}
Class C{
System.out.println("Id is ::" + new B().getId());
}
我在类C中打印时得到的ID值为null。在类A中使用getData方法运行的代码正在运行,其中我将id的值设置为111,但是从类C调用时,我总是得到null。类级别变量(即id)未更新为值111。
您可以改为这样做:
class B extends A{
String getId() {
return super.id;
}
Class C{
System.out.println("Id is ::" + (new B()).getId());
}