Ниже приведена часть моего кода для проекта:
public class Body extends Point{
    public double x, y, mass;
    public Body() {
        x = y = mass = 0;
    }
    public Body(double x, double y, double mass) {
        this.mass = mass;
        this.x = x;
        this.y = y;
    }
}
public class Point {
    public double x;
    public double y;
    public Point(double x, double y) {
        this.x = x;
        this.y = y;
    }
}
Я быстро понял, что при этом создаются переменные два внутри класса Body, называемого x, и две другие переменные в Body, называемые y. Как это возможно, и почему на самом деле Java даже разрешает это?
Я предполагаю, что это правильный код класса Body:
public class Body extends Point{
    public double mass;
    public Body() {
        super();
        mass = 0;
    }
    public Body(double x, double y, double mass) {
        super(x,y);
        this.mass = mass;
    }
}
Спасибо за ваше время
