コードAは正常に動作しますが、コードBは正しく動作すると思いますが、コードBは正しく動作しません。どうして?Javaの関数でオブジェクトを作成できないのはなぜですか?
機能でオブジェクトを作成できないのはなぜですか?private void SetField(Context mContext,MAtt aField,String name)
?
コードA
public class MURLPar {
public MAtt diskcount=new MAtt();
public MAtt diskindex=new MAtt();
public MURLPar(Context mContext){
SetField(mContext,diskcount,"Pardiskcount");
SetField(mContext,diskindex,"Pardiskindex");
}
public class MAtt {
public String name;
public String value;
}
private void SetField(Context mContext,MAtt aField,String name){
int id = mContext.getResources().getIdentifier(name, "string", mContext.getPackageName());
aField.name=mContext.getString(id);
}
}
コードB
public class MURLPar {
public MAtt diskcount;
public MAtt diskindex;
public MURLPar(Context mContext){
SetField(mContext,diskcount,"Pardiskcount");
SetField(mContext,diskindex,"Pardiskindex");
}
public class MAtt {
public String name;
public String value;
}
private void SetField(Context mContext,MAtt aField,String name){
aField=new MAtt(); //Create object
int id = mContext.getResources().getIdentifier(name, "string", mContext.getPackageName());
aField.name=mContext.getString(id);
}
}
'マット・'インターフェースは何ですか? –
エラーには何が表示されますか? – Shaishav
この質問では、「コードBが正しく動作しない」ということについて明確に定義されていませんでした。しかし、それはコンパイルエラーではありません。それはビジネスロジックエラーかもしれません。 – NangSaigon