Java 在整个活动中使用Const来存储值?
我有4个类:Const、Users、FacebookProfile和Test类。我已经设法从facebook上获得了生物数据。我想将biodata保存到Const,这样在测试类上我就可以通过Const.getName()来吐司fname 下一个类是用于保存数据的ConstJava 在整个活动中使用Const来存储值?,java,android,Java,Android,我有4个类:Const、Users、FacebookProfile和Test类。我已经设法从facebook上获得了生物数据。我想将biodata保存到Const,这样在测试类上我就可以通过Const.getName()来吐司fname 下一个类是用于保存数据的Const public final class Const { Users users; public Users getUsers(){ return users; } public void setUsers(Use
public final class Const {
Users users;
public Users getUsers(){
return users;
}
public void setUsers(Users users){
this.users = users;
}
private Const() {
init();
}
public static Const getInstance() {
return ConstHolder.INSTANCE;
}
private void init() {
this.getUsers();
}
private static class ConstHolder {
private static final Const INSTANCE = new Const();
}
}
我发现我的问答题的答案很简单,通过你的应用程序一直使用Const
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button , button1;
button1 = (Button)findViewById(R.id.buttondata);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String name = "Alex";
String lname = "Boey";
Users users = new Users();
users.setFname(name);
users.setLname(lname);
Const.getInstance().setUsers(users);
Toast.makeText(getApplicationContext(),"Data saved", Toast.LENGTH_LONG).show();
}
});
button = (Button) findViewById(R.id.buttonb);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
Toast.makeText(getApplicationContext() ,Const.getInstance().getUsers().getFname().toString() + Const.getInstance().getUsers().getLname(),Toast.LENGTH_LONG).show();
}catch (Exception e){
Toast.makeText(getApplicationContext() , "Nothing found in the Const" , Toast.LENGTH_LONG).show();
}
}
});
}
}
“我如何将它保存在const上以访问应用程序的任何地方”-在这种情况下,我会认为它是坏的实践,但是你可以检查。我会投票反对使用单身汉。相反,我会传递
Const
的引用,或者考虑将数据库添加到项目中。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button , button1;
button1 = (Button)findViewById(R.id.buttondata);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String name = "Alex";
String lname = "Boey";
Users users = new Users();
users.setFname(name);
users.setLname(lname);
Const.getInstance().setUsers(users);
Toast.makeText(getApplicationContext(),"Data saved", Toast.LENGTH_LONG).show();
}
});
button = (Button) findViewById(R.id.buttonb);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
Toast.makeText(getApplicationContext() ,Const.getInstance().getUsers().getFname().toString() + Const.getInstance().getUsers().getLname(),Toast.LENGTH_LONG).show();
}catch (Exception e){
Toast.makeText(getApplicationContext() , "Nothing found in the Const" , Toast.LENGTH_LONG).show();
}
}
});
}
}