Java: Definición de clases I.
• Creación de objetos:
Morado = Clase
Vino = Objeto
Azul = Constructor
Verde = Método
Coche coche1 = new Coche();
coche1.acelerar();
• Métodos: Parámetros y argumentos
public void metodo(Int a, String b) <--- Parámetros{
-----
-----
}
objeto.metodo(1, "Hola"); <--- Invocación de método, lo de dentro de los paréntesis son los argumentos, es decir, le estamos dando valores a los parámetros.
-Parámetros: Es una declaración de variable u objeto. Datos con los que el método va a trabajar.
-Argumentos: Es un valor que se envía.
-Hay 2 tipos de métodos:
▷ Métodos que calculan y devuelven un valor.
▷ Métodos que realizan una acción.
• Métodos: Retorno de valores
public int sumar(int a, int b) {
int suma=a+b;
return n;
}
... Main ...
(5, 4);
int suma = objeto.sumar();
-Método constructor:
▷ Un constructor es un método especial de una clase que se invoca siempre que se crea un objeto de esa clase.
▷ Diseñado para inicializar las variables de instancia para un objeto.
Características:
-No devuelve ningún valor.
-Tienen el mismo nombre de la clase.
-Debe declararse como público.
public Persona(String nombre, int edad) {
this.nombre = nombre;
this.edad = edad;
}
-Se puede invocar un método en un constructor.
-Un constructor puede invocar a otro constructor.
-Un constructor tiene un parámetro this. ---> Sólo cuando coinciden los nombres de las variables de instancia con los parámetros del método.
• Sobrecarga de métodos y constructores
public Persona(String nombre, int edad) {
this.nombre = nombre;
this.edad = edad;
}
public Persona(String dni) {
this.dni = dni;
}
• Métodos: Getters y Setters.
public class Clase1 {
private int edad; <--- Atributo encapsulado
public void setEdad(int edad) {
this.edad = edad;
}
}
... Main ...
objeto1.setEdad(10);
Está estableciendo la edad.
private int getEdad() {
return edad;
}
objeto1.getNombre("Alejandro");
Muestra la edad.
No tienen parámetros a diferencia de los métodos setters.
• Métodos estáticos y atributos estáticos.
-Son miembros estáticos, es decir, miembros de clase, ya no le pertenecen al objeto sino a la clase.
-Los atributos estáticos no necesitan instanciar un objeto para poder utilizarlos.
public class Estatico {
private static String frase = "Primera frase"; ---> Este atributo pertenece a la clase.
public static void main(String[] args) {
System.out.println(Estatico.frase);
}
}
Estatico = Nombre de la clase
frase = Nombre variable
-Método estático:
public static int sumar(int n1, int n2) {
int suma = n1+n2;
return suma;
}
... Main ...
System.out.println("La suma es " + Estatico.sumar(3,4));
}
Este método ya no pertenece a los objetos sino a la clase.
• Métodos que devuelven un valor booleano.
-Una invocación de un método que devuelve un valor de tipo booleano devuelve verdadero o falso.
-Por lo tanto, es una práctica común una invocación de tal método para controlar declaraciones if-else, while loops, etc.
public boolean equals(Date FourthTry otherDate)
{
return((month.equals(otherDate.month)) && (day==ottherDate.day) && (year==otherDate.year));
}
• Métodos equals y toString.
-El método equals es un método de valor booleano, compara dos objetos de la clase para ver si satisfacen la noción de "ser igual".
-No se puede usar "==" para comparar.
• Información oculta y encapsulación.
-El ocultamiento de información es la práctica de separar cómo usar una clase a partir de los detalles de su implementación.
-Encapsulación significa que los datos y métodos de una clase se combinan en una sola unidad (es decir, un objeto de clase), que oculta los detalles de implementación.
• Public y private
-El modificador public significa que no hay restricciones donde se puede usar una variable o métodos de instancia.
-El modificador private significa que una variable de instancia o método no se puede acceder por nombre fuera de la clase.
• Acceso y mutador
-El nombre de un método de acceso generalmente comienza con la palabra get.
Accede a los datos pero no los cambia.
-El nombre de un método de mutador generalmente comienza con la palabra set.
Permiten cambiar el valor de las variables de instancia de un objeto en un control.
• Precondiciones y postcondiciones.
-La precondición de un método establece qué se supone que es verdadero cuando se llama el método.
-La postcondición de un método establece lo que es cierto después de que se ejecuta el método, siempre y cuando tiene la precondición.
• Clase stringTokenizer
-La clase StringTokenizer se usa para recuperar las palabras o tokens en una palabra múltiple.
-Hay que importarla.
-StringTokenizer (Métodos)
StringTokenizer factory = new StringTokenizer("Hello, how are you?");
public boolean hasMoreTokens()
public String nextToken()
public int countTokens()
StringTokenizer wordFactory = new StringTokenizer("Una sola palabra puede ser crítica.");
while(wordFactory.hasMoreTokens())
{
System.out.println(wordFactory.nextToken())
}
• Firmas en métodos: ¿qué son?
public void doSomething(int p1, char p2, int p3)
doSomething(int, char, int) <--- Firma
Comentarios
Publicar un comentario