Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 完成类定义_Java_Constructor_Variable Assignment - Fatal编程技术网

Java 完成类定义

Java 完成类定义,java,constructor,variable-assignment,Java,Constructor,Variable Assignment,假设您获得了以下PetDriver类,其中包括一个main方法: public class PetDriver{ public static void main(String[] args){ int weight = 40; Pet doggie = new Pet("Rover", weight); System.out.println("my pet's name is " + doggie.getName()); System.out.println(

假设您获得了以下PetDriver类,其中包括一个main方法:

public class PetDriver{
  public static void main(String[] args){
    int weight = 40;
    Pet doggie = new Pet("Rover", weight);
    System.out.println("my pet's name is " + doggie.getName());
    System.out.println("my pet's weight is " + doggie.getWeight());
  }
}
执行main生成以下输出:

我的宠物叫罗孚
我的宠物的体重是40

我的代码如下,但返回null

public class pet {

    public String name;
    public int weight = 40;

    public Pet (String y, int x){
        y = name;
        x = weight;
    }

    public String getName(){
        return name;
    }

    public int getWeight(){
        return weight;
    }
}

谢谢

在构造函数中,您应该以另一种方式执行:

public Pet (String y, int x){
  name = y;    // instead of y = name
  weight = x;  // instead of x = weight
}

您所做的是将成员值赋给构造函数的参数,而不是反过来。因此,从未写入成员值
name
本身,因此在构造函数中它是
null

,您应该以另一种方式执行此操作:

public Pet (String y, int x){
  name = y;    // instead of y = name
  weight = x;  // instead of x = weight
}

您所做的是将成员值赋给构造函数的参数,而不是反过来。因此,从未写入成员值
name
本身,因此它是
null

您的构造函数没有将值分配给属性。将它们更改为以下内容

public Pet (String y, int x){
  name = y;
  weight = x;
}

您的构造函数没有为属性赋值。将它们更改为以下内容

public Pet (String y, int x){
  name = y;
  weight = x;
}