Herramientas de usuario

Herramientas del sitio


bloque2:metodosstatic

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
bloque2:metodosstatic [14/12/2018 22:57] – [Sobrecarga de Métodos] Fernando Valdeónbloque2:metodosstatic [16/09/2024 20:53] (actual) – editor externo 127.0.0.1
Línea 5: Línea 5:
   * Métodos estáticos: se definen como ''static''   * Métodos estáticos: se definen como ''static''
   * Métodos de instancia   * Métodos de instancia
 +
 +En este tema nos centramos en los __métodos estáticos__.
  
 Algunos de los métodos estáticos que hemos usado hasta ahora: Algunos de los métodos estáticos que hemos usado hasta ahora:
Línea 13: Línea 15:
 </code> </code>
  
-También hemos creado objetos y usado métodos no estáticos (de instancia):+También hemos usado métodos no estáticos (de instancia) a partir de algunos objetos:
 <code java> <code java>
 //Es necesario construir un objeto //Es necesario construir un objeto
Línea 55: Línea 57:
 Definimos como ''void'' los métodos que no devuelven un valor. Harán cosas pero no devuelven un valor. Normalmente muestran datos por pantalla. Definimos como ''void'' los métodos que no devuelven un valor. Harán cosas pero no devuelven un valor. Normalmente muestran datos por pantalla.
  
-''void'' es una palabra reservada usada cuando no hay valor de retorno. No se pueden crear variables ''void''.+''void'' es una palabra reservada que se usa solo para indicar que un método no retorna nada. No se pueden crear variables de tipo ''void''.
  
 <code java> <code java>
Línea 68: Línea 70:
  
 ==== Modificador static ==== ==== Modificador static ====
-Por ahora, la principal característica que nos interesa de la cláusula ''static'' esque para usarlo no necesitamos crear un objeto de la clase en la que se encuentra definido.+Por ahora, la principal característica que nos interesa de la cláusula ''static'' es que para usar un método static  no necesitamos crear un objeto de la clase en la que se encuentra definido.
  
 Por ejemplo: todos los métodos de la ''clase Math'', son estáticos, y no necesitamos crear una variable de tipo Math para ejecutarlos. Por ejemplo: todos los métodos de la ''clase Math'', son estáticos, y no necesitamos crear una variable de tipo Math para ejecutarlos.
Línea 78: Línea 80:
  
 <code java> <code java>
-package sumar;+package metodos;
  
-public class Ejercicio1 +public class Metodo1
    public static void main(String[] args) {     public static void main(String[] args) { 
-      int num1=3, num2=5;  +      int num1 = 3, num2 = 5;  
-      System.out.println("La suma es: " + +      System.out.println("La suma es: " + sumar(num1, num2)); 
-      sumar(num1, num2)); +
        
  
Línea 99: Línea 100:
 <code java> <code java>
 package ejercicios; package ejercicios;
 +
 +//Debo importar la clase que lo contiene
 +import metodos.Metodo1;
  
 public class Ejercicio1 {  public class Ejercicio1 { 
Línea 104: Línea 108:
       int num1 = 3;       int num1 = 3;
       int num2 = 5;        int num2 = 5; 
-      System.out.println("La suma es: " + sumar(num1, num2)); +      //Lo uso poniendo delante el nombre de la clase 
 +      System.out.println("La suma es: " + Metodo1.sumar(num1, num2)); 
        
 } }
Línea 121: Línea 126:
  
 Como vemos hay varios métodos repetidos, pero tienen alguna diferencia entre el __tipo del parámetro__ o __la cantidad de parámetros__ que reciben. Como vemos hay varios métodos repetidos, pero tienen alguna diferencia entre el __tipo del parámetro__ o __la cantidad de parámetros__ que reciben.
 +
 +----
  
 {{ vimeo>306490019?medium }} {{ vimeo>306490019?medium }}
 +
 +----
 ===== Recursividad ===== ===== Recursividad =====
 Se conoce con el nombre de recursividad a la técnica en la que un método hace una llamada a sí mismo. Es una técnica muy potente, pero también muy pesada (consumo de recursos). Se conoce con el nombre de recursividad a la técnica en la que un método hace una llamada a sí mismo. Es una técnica muy potente, pero también muy pesada (consumo de recursos).
  
-Método recursivo para obtener el valor factorial de un entero positivo+Ejemplo de método recursivo para obtener el valor factorial (1 x 2 x 3 x ... x N) de un entero positivo (N): 
 <code java> <code java>
 static int factorial(int entero){  static int factorial(int entero){ 
 +
 +   //Condición de salida de recursividad
    if (entero == 0){    if (entero == 0){
       return 1;        return 1; 
              
 +   
 +   //LLamada recursiva
    return factorial(entero - 1) * entero;     return factorial(entero - 1) * entero; 
 } }
bloque2/metodosstatic.1544828242.txt.gz · Última modificación: 16/09/2024 20:53 (editor externo)