我有两个类
ABC 类
double a = 0.5
public double lala()
{
return a;
}
我想在另一个类中使用它,比如 DEF 类
ABC abc;
double baba = abc.lala();
但它说 java.lang.NullPointerException,知道吗?谢谢
public class AdapterDB
{
double cal;
double rcarbohydrate;
double rfat;
double rprotein;
public AdapterDB(double cal, double rcarbohydrate, double rfat, double rprotein, Context ctx)
{
this.cal = cal;
this.rcarbohydrate = rcarbohydrate;
this.rfat = rfat;
this.rprotein = rprotein;
this.context = ctx;
DBHelper = new DatabaseHelper (context);
}
public double Calorie()
{
return cal;
}
public double Carbohydrate()
{
return rcarbohydrate;
}
public double Protein()
{
return rprotein;
}
public double Fat()
{
return rfat;
}
}
这是我的 ABC 类代码,我想在另一个类中使用其中的一些代码 >_<
最佳答案
你需要在内存中分配ABC,否则它指向null
,因此出现NullPointerException:
ABC abc = new ABC();
double baba = abc.lala();
编辑:好的,万一 ABC 没有零参数构造函数,例如:
public ABC() { }
您有两种选择来解决您的问题。添加一个并在内部为其他字段提供默认值。喜欢:
public AdapterDB()
{
DBHelper = new DatabaseHelper (context);
}
或者,修改对象的创建,例如:
double p1 = <some value>;
double p2 = <some value>;
double p3 = <some value>;
double p4 = <some value>;
Context ctx = new Context(); // don't know what this does.
ABC abc = new ABC(p1, p2, p3, p4, context);
double baba = abc.lala();
关于java - 从一个类获取值以在另一个类中使用它(java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8167966/