java从其他类访问数据
我是初学者,所以请非常具体。无论如何,我这里有三个代码类,我想从c-b然后b-a访问数据,例如
class GoobyPls {
{
private int CHealth = 20;
private int MHealth = 20;
private int CAgility = 10;
private int MAgility = 10;
private int CDefence = 5;
private int MDefence = 5;
}
}
class Stats {
public static void foo() {
string Health = CHealth + "/" + MHealth ;
string Agility = CAgility + "/" + MAgility;
string Defence = CDefence + "/" + MDefence;
}
}
class ViewStats {
public static void foo() {
System.out.println("Health");
System.out.println(Health);
System.out.println(" ");
System.out.println("Agility");
System.out.println(Agility);
System.out.println(" ");
System.out.println("Defence");
System.out.println(Defence);
System.out.println(" ");
}
}
所以{
另外,我不能把它全部放在一个类中,因为最终会有一个修改器类来编辑CHealth
、MHealth
等等
# 1 楼答案
首先,你不能像下面这样谈论你的私人领域
它应该是
String
而不是字符串使用IDE进行编码,它将帮助您自己识别此类问题
# 2 楼答案
在类中
GoobyPls
为每个项添加getter,如下所示:然后在
viewStats
中执行以下操作:只要在需要使用私有变量时调用getter即可。或者您也可以定义公共变量,以便直接在viewStats中调用它们。但是从设计的角度来看,getter和setter更好,因为隐藏信息更好。 字段应声明为私有,除非有充分理由不这样做
# 3 楼答案
我强烈建议您通读Java tutorial on classes and objects,这将为您的工作打下良好的基础
在类之间传递数据的最基本方法是在类中定义公共方法,其他对象可以调用这些方法来访问您的数据。例如:
返回值的名称为
getX()
的方法称为“getter”。然后,在另一个类中,您可以访问该数据,例如:与类通信的另一种方式是编写采用参数的方法,例如:
您可能还希望提供方法来设置对象中的数据。这些被称为“setter”,与“getter”相对应。在
Person
之上构建:然后,其他对象可以修改个人的数据,例如:
下面是一个使用上面所有内容的示例:
希望对你有帮助,祝你好运。阅读那些教程
# 4 楼答案
在你的班上放上“能手”和“二传手”。或者将字段公开。(我不建议第二个)
然后您可以这样访问:
# 5 楼答案
如果要访问类外部的私有变量,必须使用下面的getter方法
下面是你的国家班
在
viewstat
类的foo()
方法中,您可以通过State.Health
、State.Agility
和State.Defence
访问about值