找不到symbol的错误?-问答-阿里云开发者社区-阿里云

开发者社区> 蛮大人123> 正文

找不到symbol的错误?

2016-02-25 14:11:23 1565 1

使用this不是引用创建的对象么?

public class Point implements Comparable<Point> {
    int x, y;
    public final Comparator<Point> SLOPE_ORDER = new ByOrder();

    private class ByOrder implements Comparator<Point> {
        public int compare(Point one, Point two) {
            return this.slopeTo(one) < this.slopeTo(two) ? -1: 
                   this.slopeTo(one) > this.slopeTo(two) ? 1:0;
        }
    }

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

    public void draw() {
        StdDraw.circle(x, y, 00);
    }

    public void drawTo(Point that) {
        StdDraw.line(this.x, this.y, that.x, that.y);
    }

    public String toString() {
        String point_string = '(' + String.valueOf(x) + ',' + 
                                    String.valueOf(y) + ')';
        return point_string;
    }

    public int compareTo(Point that) {
        return ((this.y < that.y) || (this.y == that.y && this.x < that.x)) ? -1:
                (this.y > that.y) ? 1:0;

    }
    public double slopeTo(Point that) {
        double slope = (that.y - this.y) / (that.x - this.x);
        return slope;
    }

}

Point.java:10: error: cannot find symbol return this.slopeTo(one) <
this.slopeTo(two) ? -1:

symbol: method slopeTo(Point)

取消 提交回答
全部回答(1)
  • 蛮大人123
    2019-07-17 18:47:28

    你的 this 是 ByOrder 对象,而 ByOrder 不在 Point 的继承树上。

    0 0
+关注
蛮大人123
我说我不帅他们就打我,还说我虚伪
0
文章
7733
问答
推荐问答
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载