20.- La clase Punto y su Interface.
20.- La clase Punto.
La clase Punto produce objetos punto, con las dos coordenadas x e y, de números enteros, pero fácilmente se pueden convertir en reales y tendríamos una nueva clase.
Las operaciones y los objetos están situados, para mayor facilidad en el primer cuadrante.
import java.util.*;
public class Punto{
//tiene dos atributos, que forman el objeto punto;
private int x;
private int y;
public Punto(){//Es el constructor de un punto especial, que es el origen: (0,0).
x = 0;
y = 0;
}
public Punto(int x, int y){//Es el constructor de un punto cualquiera,this.x se refiere a la variable atributo, que toma el valor: (x,y).
this.x = x;
this.y = y;
}
//métodos:
public double distanciaOrigen(){
Punto p1 = new Punto(this.x,this.y);
double distOrigen = Math.sqrt(p1.x*p1.x+p1.y*p1.y);
System.out.println(distOrigen);
return distOrigen;
}
public double distancia2Puntos(Punto p2){
Punto p1 = new Punto(this.x,this.y);
double dist2Puntos = Math.sqrt(Math.pow(p1.x-p2.x,2)+Math.pow(p1.y-p2.y,2));
System.out.println(dist2Puntos);
return dist2Puntos;
}
public void mover(int x, int y){
Punto p1 = new Punto (this.x, this.y);
p1.x = this.x + x;
p1.y = this.y + y;
System.out.println(p1.x+", "+p1.y);
}
public static void main(String[] arg){
Punto p1 = new Punto(10,0);
p1.distanciaOrigen();
Punto p2 = new Punto(0,10);
p1.distancia2Puntos(p2);
p1.mover(4,7);
p2.mover(4,7);
p1.distanciaOrigen();
p1.distancia2Puntos(p2);
}
}
El constructor Punto puede ser muy complejo, con tal que es resultado sea un objeto punto. Por ejemplo, podría estar formado por dos puntos y obtener el punto medio. Por tres puntos y obtener el centro de masas del triángulo formado, ... aunque todo ello es mejor obtenerlo por métodos adicionales.
Class Punto
- java.lang.Object
- Punto
public class Punto extends java.lang.Object
Method Summary
Modifier and Type Method Description doubledistancia2Puntos(Punto p2)doubledistanciaOrigen()static voidmain(java.lang.String[] arg)voidmover(int x, int y)
Constructor Detail
Punto[Show source in BlueJ]
public Punto()
Punto[Show source in BlueJ]
public Punto(int x, int y)
Method Detail
distanciaOrigen[Show source in BlueJ]
public double distanciaOrigen()
distancia2Puntos[Show source in BlueJ]
public double distancia2Puntos(Punto p2)
mover[Show source in BlueJ]
public void mover(int x, int y)
main[Show source in BlueJ]
public static void main(java.lang.String[] arg)
Comentarios
Publicar un comentario