[英]How to use instance of a class in its own method for another instance?
我有两种情况:
情况1:我想使用一个类的一个实例,同时将该类的方法用于另一个实例。
情况2:我想在使用另一个类的方法时使用一个类的一个实例。
我将在代码的帮助下解释这两种情况。 我是JAVA的新手,因此并不真正了解所有基础知识。
情况1:
public class Sum {
public int var_one ;
public int var_two ;
public int total ;
public int calculate_total(){
total = var_one + ......// In place of these dots I want to use many[i-1].var_one, i.e. the value of var_one of instance many[2] for instance many[3] and so on. HOW CAN I DO THIS ???
return total;
}
public static void main(String[] args){
// Creating instances
Sum [] many = new Sum [5];
// Initializing instances
for (int i = 0 ; i < 5 ; i++){
many[i] = 0;
}
}
// Assigning values
for (int i = 0 ; i < 5 ; i++){
many[i].var_one = 1;
many[i].var_two = many[i].var_one + 1;
many[i].total = many[i].calculate_total();
}
}
}
情况2:
public class See {
public int once ;
public int colour;
public int assign_once_colour(){
once = 0;
colour = once + 1;
return colour;
}
public static void main(String[] args){
See [] name = new See [5];
for (i = 0; i < 5 ; i++){
name [i].colour = name [i].assign_once_colour();
}
}
}
public class Sum {
public int var_one ;
public int var_two ;
public int total ;
}
public int calculate_total(){
total = var_one + ......// In place of these dots I want to use name[i-1].colour, i.e. the value of colour of instance name[2] for instance many[3] and so on. HOW CAN I DO THIS ???
return total;
}
public static void main(String[] args){
// Creating instances
Sum [] figure = new Sum [5];
// Initializing instances
for (int i = 0 ; i < 5 ; i++){
figure[i] = 0;
}
}
// Assigning values
for (int i = 0 ; i < 5 ; i++){
figure[i].var_one = 1;
figure[i].var_two = many[i].var_one + 1;
figure[i].total = many[i].calculate_total();
}
}
}
}
我希望我能正确解释我的疑问。
情况1:我想使用一个类的一个实例,同时将该类的方法用于另一个实例。
根据代码很难看到这一点。
// In place of these dots I want to use many[i-1].var_one,
上面的那一行并不代表根据您的代码的方法。 那是整数。 因此,我不确定您要在这里说什么,但我认为您的措辞或术语有些偏离。
情况2:我想在使用另一个类的方法时使用一个类的一个实例。
In place of these dots I want to use name[i-1].colour,
基本上是一个相同的示例。 那是另一个整数,不是方法。 因此,再次理解您的意思有点困难,但是如果您的代码表明您实际想要的是什么,那么我可以说...
你不能 在这两种情况下,您都使用范围仅限于main
方法的数组。 您不能从Sum
的实例访问它。
您可以做的是像这样向您的calculateSum
方法添加一个参数。
public int calculate_total(int other) { ... }
这样,您就可以从要查找的数组中获得单个元素的整数值。 传入的参数将是var_one
和元素的colour
。 这样,您可以进行简单的整数加法运算。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.