我是一名AP Java学生,在做一个项目时,我想知道拥有一个全局变量的参数是否是一种好习惯。如果你想知道为什么我想做得那么好,所以我就不必这样做了:
public class Circle {
private DrawingTool pen;
private SketchPad paper;
private double myX;
private double myY;
private double myWidth;
private double myHeight;
public Circle(double x, double y, double width, double height){
paper = new SketchPad(500,500);
pen = new DrawingTool(paper);
x = myX; //I don't want to have to assign this every time
y = myY; //like here
width = myWidth; // and here
height = myHeight; // and here
}
}
是否允许仅执行以下操作:
public Circle(double myX, double myY, double myWidth, double myHeight){
paper = new SketchPad(500,500);
pen = new DrawingTool(paper);
}
}
每次我将参数传递给参数时,它们都会自动分配给全局变量?
每次我将参数传递给参数时,它们都会自动分配给全局变量?
不。Java中没有任何内容可以使"参数到实例变量"(不是真正的"全局")赋值自动进行。许多 IDE 都能够为您生成代码,但它确实需要在那里。
对象将其状态存储在字段(某些编程语言中的变量)中,并通过方法(某些编程语言中的函数)公开其行为。方法对对象的内部状态进行操作,并充当对象到对象通信的主要机制。隐藏内部状态并要求通过对象的方法执行所有交互称为数据封装 - 面向对象编程的基本原则。
来源:什么是对象?