我是一名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);
}
}
每次我将参数传递给参数时,它们会自动分配给全局变量吗?
答案 0 :(得分:0)
每次我将参数传递给参数时,它们会自动分配给全局变量吗?
没有。 Java中没有任何内容可以使“参数变为实例变量”(这不是真正的“全局”)自动赋值。许多IDE都能够为您生成代码,但它确实需要存在。
答案 1 :(得分:0)
对象将其状态存储在字段(某些编程语言中的变量)中,并通过方法(某些编程语言中的函数)公开其行为。方法对对象的内部状态进行操作,并作为对象到对象通信的主要机制。隐藏内部状态并要求通过对象的方法执行所有交互称为数据封装 - 面向对象编程的基本原则。