如何在新 class 中使用不同 class 中的变量
How to use variables in a different class in a new class
我最近了解了变量的 getter 和 setter,所以我想利用它。我为使用 getter 和 setter 的变量创建了一个单独的 class。我想在包含公式的不同 class 中使用我在此 class 中创建的变量。如何使用公式中的变量 class?
这是我的变量 class:
public class Variables {
private int width, height, smallRectangle, bigRectangle;
//getters
public int getWidth() {
return width;
}
public int getHeight() {
return height;
}
public int getSmallRectangle() {
return smallRectangle;
}
public int getBigRectangle() {
return bigRectangle;
}
//setters
public void setWidth(int width) {
this.width = width;
}
public void setHeight(int height) {
this.height = height;
}
public void setSmallRectangle(int smallRectangle) {
this.smallRectangle = smallRectangle;
}
public void setBigRectangle(int bigRectangle) {
this.bigRectangle = bigRectangle;
}
这些是应该在公式 class 中的公式(这不起作用)
public class Formulas {
public static int rectangleFormula(){
smallRectangle=width*height;
bigRectangle=smallRectangle*5
}
已编辑:
public class Formulas {
public static int rectangleFormula(Textview a, Textview b, Textview c, Textview d){
Variables v= new Variables();
int width = v.getWidth();
int height = v.getHeight();
int smallRectangle = width*height;
int bigRectangle = smallRectangle*5;
a.setText(Integer.toString(v.width()));
b.setText(Integer.toString(v.height()));
c.setText(Integer.toString(v.smallRectangle()));
d.setText(Integer.toString(v.bigRectangle()));
}
如果您打算使用 class Variables
作为常量的共享存储库,您需要将所有 fields/methods 声明为 static
(class 属性)。否则,您必须首先创建 class Variables v = new Variables()
的实例。只有这样你才能使用 v.getWidth()
和 v.setWidth()
.
public class Formulas {
public static int rectangleFormula(Variables v){
int width = v.getWidth();
int height = v.getHeight();
int smallRectangle = width*height;
int bigRectangle = smallRectangle*5;
}
您可以像这样使用 getter 和 setter。
public class Formulas {
public static int rectangleFormula(){
Variables v = new Variables();
v.setWidth(5);
v.setHeight(10);
int smallRectangle=v.getWidth() * v.getHeight();
int bigRectangle=smallRectangle*5;
System.out.println("smallRectangle: " + smallRectangle +
"\nbigRectangle:" + bigRectangle);
}
}
我最近了解了变量的 getter 和 setter,所以我想利用它。我为使用 getter 和 setter 的变量创建了一个单独的 class。我想在包含公式的不同 class 中使用我在此 class 中创建的变量。如何使用公式中的变量 class?
这是我的变量 class:
public class Variables {
private int width, height, smallRectangle, bigRectangle;
//getters
public int getWidth() {
return width;
}
public int getHeight() {
return height;
}
public int getSmallRectangle() {
return smallRectangle;
}
public int getBigRectangle() {
return bigRectangle;
}
//setters
public void setWidth(int width) {
this.width = width;
}
public void setHeight(int height) {
this.height = height;
}
public void setSmallRectangle(int smallRectangle) {
this.smallRectangle = smallRectangle;
}
public void setBigRectangle(int bigRectangle) {
this.bigRectangle = bigRectangle;
}
这些是应该在公式 class 中的公式(这不起作用)
public class Formulas {
public static int rectangleFormula(){
smallRectangle=width*height;
bigRectangle=smallRectangle*5
}
已编辑:
public class Formulas {
public static int rectangleFormula(Textview a, Textview b, Textview c, Textview d){
Variables v= new Variables();
int width = v.getWidth();
int height = v.getHeight();
int smallRectangle = width*height;
int bigRectangle = smallRectangle*5;
a.setText(Integer.toString(v.width()));
b.setText(Integer.toString(v.height()));
c.setText(Integer.toString(v.smallRectangle()));
d.setText(Integer.toString(v.bigRectangle()));
}
如果您打算使用 class Variables
作为常量的共享存储库,您需要将所有 fields/methods 声明为 static
(class 属性)。否则,您必须首先创建 class Variables v = new Variables()
的实例。只有这样你才能使用 v.getWidth()
和 v.setWidth()
.
public class Formulas {
public static int rectangleFormula(Variables v){
int width = v.getWidth();
int height = v.getHeight();
int smallRectangle = width*height;
int bigRectangle = smallRectangle*5;
}
您可以像这样使用 getter 和 setter。
public class Formulas {
public static int rectangleFormula(){
Variables v = new Variables();
v.setWidth(5);
v.setHeight(10);
int smallRectangle=v.getWidth() * v.getHeight();
int bigRectangle=smallRectangle*5;
System.out.println("smallRectangle: " + smallRectangle +
"\nbigRectangle:" + bigRectangle);
}
}