que sigue es una parte de mi código para un proyecto:Tener 2 variables con el mismo nombre en una clase que amplía otra clase en Java
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;
}
}
rápidamente me di cuenta de que haciendo esto creará dos las variables en el interior la clase del cuerpo llamó x y otras dos variables en el cuerpo llamado y. ¿Cómo es esto posible, y por qué demonios lo permite Java?
Asumo que esto es el código correcto del cuerpo de la clase:
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;
}
}
Gracias por su tiempo
Entonces, si tengo un método con un parámetro Point y envío una instancia de la clase Body, ¿podré acceder a las variables x e y desde Point de esa instancia? Y si tuviera el parámetro de entrada de tipo Body en lugar de Point, ¿solo podría acceder a las variables xey desde Body? –