bloque2:metodosstatic
Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
bloque2:metodosstatic [19/11/2018 16:53] – [Métodos estáticos] Fernando Valdeón | bloque2: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 '' | * Métodos estáticos: se definen como '' | ||
* 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: | ||
</ | </ | ||
- | Otros método que también | + | También |
<code java> | <code java> | ||
+ | //Es necesario construir un objeto | ||
String cadena = " | String cadena = " | ||
Scanner input = new Scanner(System.in); | Scanner input = new Scanner(System.in); | ||
- | //Se ejecutan desde un objeto | + | //se llama a sus métodos a partir del objeto |
cadena.charAt(4); | cadena.charAt(4); | ||
input.nextLine(); | input.nextLine(); | ||
Línea 39: | Línea 42: | ||
* **Modificadores**: | * **Modificadores**: | ||
* **Tipo retorno**: Tipo de datos que devuelve el método. Puede devolver un tipo concreto, o no devolver nada: '' | * **Tipo retorno**: Tipo de datos que devuelve el método. Puede devolver un tipo concreto, o no devolver nada: '' | ||
- | * **Identificador**: | + | * **Identificador**: |
* **Lista de parámetros**: | * **Lista de parámetros**: | ||
- | * **Return**: se usa para indicar | + | * **Return**: se usa para devolver |
<code java> | <code java> | ||
Línea 54: | Línea 57: | ||
Definimos como '' | Definimos como '' | ||
- | '' | + | '' |
<code java> | <code java> | ||
Línea 67: | Línea 70: | ||
==== Modificador static ==== | ==== Modificador static ==== | ||
- | Por ahora, la principal característica que nos interesa de la cláusula '' | + | Por ahora, la principal característica que nos interesa de la cláusula '' |
Por ejemplo: todos los métodos de la '' | Por ejemplo: todos los métodos de la '' | ||
Línea 77: | Línea 80: | ||
<code java> | <code java> | ||
- | package | + | package |
- | public class Ejercicio1 | + | public class Metodo1{ |
| | ||
- | int num1=3, num2=5; | + | int num1 = 3, num2 = 5; |
- | System.out.println(" | + | System.out.println(" |
- | | + | |
| | ||
Línea 98: | 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 103: | Línea 108: | ||
int num1 = 3; | int num1 = 3; | ||
int num2 = 5; | int num2 = 5; | ||
- | System.out.println(" | + | |
+ | | ||
| | ||
} | } | ||
Línea 115: | Línea 121: | ||
* Diferencia en el tipo de parámetros que reciben. | * Diferencia en el tipo de parámetros que reciben. | ||
- | Un ejemplo | + | Ejemplos |
{{ : | {{ : | ||
{{ : | {{ : | ||
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> | ||
+ | |||
+ | ---- | ||
===== Recursividad ===== | ===== Recursividad ===== | ||
- | Se conoce con el nombre de recursividad a un método | + | Se conoce con el nombre de recursividad a la técnica |
+ | |||
+ | Ejemplo de método recursivo para obtener el valor factorial (1 x 2 x 3 x ... x N) de un entero positivo (N): | ||
- | Método para obtener el valor factorial de un entero positivo | ||
<code java> | <code java> | ||
static int factorial(int entero){ | static int factorial(int entero){ | ||
- | int fact = 1; | + | |
+ | // | ||
if (entero == 0){ | if (entero == 0){ | ||
- | | + | |
- | }else{ | + | |
- | | + | |
- | //Multiplicamos | + | |
- | fact = fact * i; | + | |
- | } | + | |
- | | + | |
} | } | ||
</ | </ |
bloque2/metodosstatic.1542646437.txt.gz · Última modificación: 16/09/2024 20:53 (editor externo)