我从另一个类中获取我创建的变量时遇到了一些问题。
这是我从中检索的数据。
public class Data{
private String mName;
public Data(String sometext){
this.mName = sometext;
}
public String getmName(){
return mName;
)
以下是主要内容。
public class Class1 extends Fragment{
private Data mData;
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInsatanceState){
View view = inflater.inflate(R.layout.one, container, false);
mData = new Data("Someone Name")
.
.
.
这是问题,从类Data2我无法检索我从Class1创建的变量。
public class Data2{
private Data notworking;
public Data2(){
notworking.mName; //not working, reference to null
notworking.getmName // this is also not working, reference to null
}
我无法创建新数据,因为它将是一个新对象。这两个都引用null。是否有其他方法可以在不使用公共变量的情况下访问我创建的对象。
加。图片以便更好地理解 picture illustrator
答案 0 :(得分:0)
基本上你要做的就是将Data2类中的变量“notworking”分配给你在Class1中创建的Data对象“mData”。
实现此目的的一种简单方法是使用Data2构造函数将Data对象作为参数,然后将notworking指定给该参数。
public class Data2 {
private Data notworking;
public Data2(Data dataObject){
notworking = dataObject;
}
// getter method necessary since "notworking" is private
public Data getNotworking() {
return notworking;
}
}
显然,你需要Class1中的Data2变量。然后你只需构造你的Data2对象并传入“mData”。
mData2 = new Data2(mData);