Java学习一个月的新手想问个问题…(´╥ω╥`) 问题是这样的: 我先是建了个Point的类。类中有两个叫distance的行为方法。当我在写第二个distance(Point p)的时候,return的值可以直接用第一个distance(int x,int y)。 但是在之后建的Circle类里。同样有两个contains的行为方法。可是在写第二个contains(Point p)时却不可以直接用第一个contain(int x,int y)。系统标红的原因是“The filed Point.x is not visible.” 我不太明白为什么两种情况下,一种可以一种不可以。以及,我在contains(Point p)中只有像contains(int x,int y)一样重新写一遍才可以吗? 希望能被看到解答。(〃∇〃)蟹蟹您



你的x, y 字段访问权限不足,你应给用p.getX() p.getY()
Point中的x不是public权限,不能直接访问,你不是已经封装了getX了么,改成
return contains(p.getX(),p.getY()