如何使用set方法设置数据字段?

时间:2015-01-29 02:58:34

标签: java

在一个课程中,我定义了一个setX方法

public class Point{
int x;
int y;
...

public int setX(int x){
this.x = x;
}

...
}

在另一个类中,我需要创建一个点对象并将其x字段设置为1,我不知道该写什么。这就是我写的

public class Lab1{
 public static void main (String[] args){
Point a;

a.x = new setX(1);
...
 }
}

我该怎么办?

3 个答案:

答案 0 :(得分:2)

您需要初始化Point a;尝试添加Point a = new Point()然后您应该设置它{x应该是您的代码。

public class Lab1{
public static void main (String[] args){
Point a = new Point();

a.setX(1);
System.out.println(a.x);//the value 1 should be displayed
}

如果你想知道你的类看起来像构造函数那么就是一个例子

public class Point{
int x;
int y;

public Point(int x, int y){
this.x = x;
this.y = y;
}

public void setX(int x){
this.x = x;
}

public void setY(int y){
this.y = y;
}

public int getX(){
return this.x;
}

}

public int getY(){
return this.y
}

答案 1 :(得分:2)

Setter应该是VOID,因为它们不会返回任何值......对吗?因为他们只设置实例变量

public void setX(int x){
  this.x = x;
}

在你的Point类中你应该有一个构造函数吗?您可以从Point类创建新对象。

你是怎么做到的?

像这样:

Point someName = new Point(<SOME INT HERE>);

使用构造函数设置值...不是您的示例

public class Lab1 {
    public static void main (String[] args){
        Point a = new Point(5);
    }
}

您的解决方案

public class Lab1 {
    public static void main (String[] args){
        Point a = new Point();
        a.setX(5);
    }
}

答案 2 :(得分:0)

你应该这样写。

class Point{
    int x;
    int y;

    public void setX(int x){
         this.x = x;
    }

    public int getX(){
        return this.x;
    }
}



public class Lab1 {

    public static void main(String[] args) {
        Point A = new Point();
        A.setX(1);      
        System.out.println(A.getX());

    }
}