Java 传递3个double和一个字符串,但类忽略了我的最后两个变量

Java 传递3个double和一个字符串,但类忽略了我的最后两个变量,java,string,constructor,Java,String,Constructor,为什么我的构造函数不应用变量 导入java.awt.geom.Point2D 公共类航路点扩展了Point2D.Double{ private double s; private String street; public Waypoint(double x, double y, double s, String street) { super(x,y); s=9; street="Street"; } } 这里缺少什么?更改 import java.awt.g

为什么我的构造函数不应用变量

导入java.awt.geom.Point2D

公共类航路点扩展了Point2D.Double{

private double s;
private String street;

public Waypoint(double x, double y, double s, String street) {
    super(x,y);
    s=9;
    street="Street";
}
   }
这里缺少什么?

更改

import java.awt.geom.Point2D;

public class Waypoint extends Point2D.Double{

    private double s;
    private String street;

    public Waypoint(double x, double y, double s, String street) {
        super(x,y);
        s=9;
        street="Street";
    }

您没有使用传递给构造函数的值。

这些行

s=9;
street="Street";
…将值分配给与构造函数的参数相对应的局部变量,而您希望将它们分配给字段,如下所示:

this.s = s;
this.street = street; // or "Street", if you prefer

this.
前缀使编译器理解您指的是字段,而不是同名的局部变量。

您确定它是在(9.0,9.0)以0.0英里/小时的速度打印
,在null时移动0.0英里/小时
?它应该以(9.0,9.0)的速度打印
,在街道上移动9.0英里/小时
我忘了这个!谢谢您发现了
this.s = s;
this.street = street; // or "Street", if you prefer