将参数作为全局变量是一个好习惯吗?

时间:2013-09-23 15:14:15

标签: java parameters global-variables global

我是一名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);
   }
}

每次我将参数传递给参数时,它们会自动分配给全局变量吗?

2 个答案:

答案 0 :(得分:0)

  

每次我将参数传递给参数时,它们会自动分配给全局变量吗?

没有。 Java中没有任何内容可以使“参数变为实例变量”(这不是真正的“全局”)自动赋值。许多IDE都能够为您生成代码,但它确实需要存在。

答案 1 :(得分:0)

对象将其状态存储在字段(某些编程语言中的变量)中,并通过方法(某些编程语言中的函数)公开其行为。方法对对象的内部状态进行操作,并作为对象到对象通信的主要机制。隐藏内部状态并要求通过对象的方法执行所有交互称为数据封装 - 面向对象编程的基本原则。

来源:What Is an Object?