Se llama a un método de la misma clase simplemente con el nombre del método y los parámetros entre paréntesis, como se ve, entre otros, en el ejemplo en negrita:
Archivo: Complejo.java
Compilar con: javac Complejo.java
public final class Complejo extends Number {
atributos:
private float x;
private float y;
constructor:
public Complejo(float rx, float iy) {
x = rx;
y = iy;
}
métodos:
public float Norma() {
return (float)Math.sqrt(x*x+y*y);
}
obligatorios (son abstractos en Number):
public double doubleValue() {
return (double)Norma( );
}
public float floatValue() {
return Norma();
}
public int intValue() {
return (int)Norma();
}
public long longValue() {
return (long)Norma();
}
public String toString() {
return "("+x+")+i("+y+")";
}
}
Pueden probar la clase (mínima) con el siguiente ejemplo de aplicación; la línea en negrita es un ejemplo de un llamado a un método de un objeto de otra clase. Notar que es este caso, es necesario llamar al método sobre un objeto (instancia) existente, por lo que se indica:
Nombre_del_Objeto<punto>Nombre_del_Método(parámetros)
Archivo: Ejemplo4.java
Compilar con: javac Ejemplo4.java
Ejecutar con: java Ejemplo4
import java.io.*;
public class Ejemplo4 {
public static void main(String args[]) {
Complejo numComp = new Complejo(4,-3);
System.out.println(numComp.toString());
System.out.println(numComp.Norma());
}
}
En la clase Complejo tenemos también un ejemplo de un llamado a un método de clase
, o sea static:
return (float)Math.sqrt(x*x+y*y);
Como el método es de clase, no hace falta llamarlo para un objeto en particular. En ese caso, en lugar del nombre de un objeto existente se puede utilizar directamente el nombre de la clase:
Nombre_de_la_Clase<punto>Nombre_del_Método(parámetros)
En el próximo capítulo veremos las estructuras de control y empezaremos a armar ejemplos para repasar todo esto.