| Copyright © 2020 Ing. Giovanny Guillén Bustamante
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
El éxito se alcanza con la constancia
Curso Java Desde Cero
Nivel I – Módulo IV Métodos y Arrays
Agosto 2020
Métodos
Métodos: Parámetros / Valores de retorno
Métodos: Sobrecarga
Métodos: Alcance
Métodos: Recursividad
Arrays
Arraylist
Inicio a las clases gráficas
Contenido
Módulo IV
01
02
03
04
05
06
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
07
08
Un método es un bloque de código que se ejecuta cuando es invocado desde una instancia de un objeto o desde
la misma clase.
Métodos
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
public class Prueba
{
public static void main(String [] args)
{
int num = 150;
System.out.println("El número es: " + num);
int c = cuad(num);
System.out.println("El cuadrado es: " + c);
}
private static int cuad(int num)
{
return num * num;
}
}
Método main() es el método principal y es
llamado de forma automática por la JVM
Método declarado dentro de la clase que
recibe y retorna un valor
Llamado al método que calcula el
cuadrado donde se le pasa como
parámetro un valor entero.
Modificador del método que establece el
alcance para su uso.
Los métodos se pueden utilizar entre clases, instanciado el objeto de la clase donde está declarado el método.
Métodos
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
package messages;
public class TestMsg
{
public static void main(String [] args)
{
Msg viewmsg = new Msg();
String msg=Null;
msg = viewmsg . dspmsg();
System.out.println(msg);
}
}
package messages;
public class Msg
{
protected String dspmsg()
{
return “Hola”;
}
}
El operador new, permite
declarar un nuevo objeto con la
clase declarada
Variable inicializada con el
objeto instanciado a partir de
new
Representa el llamado al
método constructor de la clase.
En este se pueden pasar
parámetros.
Para utilizar el método, se utiliza un
punto al final de la variable que
representa al objeto y seguido del
método
En un método pueden pasar parámetros y a su vez estos pueden ser declarados para retornar un valor.
Métodos: Parámetros / Valores de Retorno
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
Modificador TipoRetorno Nombre ( Lista Parametros ) { // Código}
La lista de parámetros, es el tipo, el orden y el número
de parámetros de un método. Estos son opcionales, el
método puede contener cero parámetros. Estos
pueden ser int, boolean, float, double, char, string, o
array.
Especifica el tipo de retorno del método. Si se indica
void, no devuelve valores. Los tipos de datos que
puede devolver son int, boolean, float, double, char,
string, o array.
Indica como se accederá el método. Es opcional. Los
tipos de modificadores son Private, Public, Protected,
static
Ejemplo:
Métodos: Parámetros / Valores de Retorno
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
public class SumaDeVal
{
static int sumar( int...vals )
{
int suma = 0;
for (int val : vals) { suma += val; }
return sum;
}
public static void main(String[] args)
{
int s3 = sumar(1, 2, 3, 4, 5, 6, 7);
System.out.println(s3);
}
}
Declaración del método
sumar
Declaración de valores
que recibe el método
Declaración de variable que recibe
el valor devuelto por el método
Llamado del método junto con
los valores pasados
Java soporta la sobrecarga de métodos, que permite que múltiples métodos tengan el mismo nombre pero
diferente parámetros:
Métodos: Sobrecarga
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
public class metodos
{
static int pMetodo(int x, int y)
{ return x + y; }
static double pMetodo(double x, double y)
{ return x + y; }
public static void main(String[] args)
{
int myNum1 = pMetodo(8, 5);
double myNum2 = pMetodo(4.3, 6.26);
System.out.println("int: " + myNum1);
System.out.println("double: " + myNum2);
}
}
Declaración del método pMetodo donde
recibe dos parámetros enteros y devuelve un
entero
Declaración del método pMetodo donde
recibe dos parámetros double y devuelve un
double
Llamado a cada uno de los métodos con los
respectivos tipos de valores
Los métodos, al igual que las variables pueden tener acceso restringido, dependiendo de la forma como fueron
declarados. Los modificadores de acceso son:
Métodos: Alcance
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
MODIFICADOR Class Package
Subclass
Mismo Package
Subclass
Diferente Package
Fuera de la Class
public Si Si Si Si Si
protected Si Si Si Si No
default Si Si Si No No
private Si No No No No
Modificador public: miembros de datos y métodos pueden ser accedidos desde cual clase y subclase en
cualquier paquete. No es recomendable por razones de seguridad de la aplicación.
Métodos: Alcance
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
package pruebaxyz;
public class Adicion
{
public int add(int a, int b)
{
return a+b;
}
}
package prueba;
import pruebaxyz.*;
public class Test
{
public static void main(String args[])
{
Adicion obj = new Adcion();
System.out.println(obj.add(10, 21);
}
}
Ambas clases pertenecen a paquetes distintos.
Modificador protected: miembros de datos y métodos solo son accesibles por las clases en el mismo paquete y
subclases en otros paquetes.
Métodos: Alcance
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
package pruebaxyz;
public class Adicion
{
protected int adciona(int a, int b)
{
return a+b;
}
}
package prueba;
import pruebaxyz.*;
public class Test
{
public static void main(String args[])
{
Adicion obj = new Adcion();
obj.adiciona(10, 21);
}
}
Ambas clases pertenecen a paquetes distintos.
Modificador default: se limita únicamente al paquete. Ninguna otra clase fuera de este paquete puede tener
acceso a esta clase.
Métodos: Alcance
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
package pruebaxyz;
public class Adicion
{
int adciona(int a, int b)
{
return a+b;
}
}
package prueba;
import pruebaxyz.*;
public class Test
{
public static void main(String args[])
{
Adicion obj = new Adcion();
obj.adiciona(10, 21);
}
}
Ambas clases pertenecen a paquetes distintos.
Al compilar el programa, se genera un error
Modificador private: se limita únicamente a la clase. El método no se puede utilizar desde otra clase.
Métodos: Alcance
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
class Matema
{
private double num = 100;
private int cuadrado (int a)
{
return a*a;
}
}
public class ejemplo
{
public static void main(String args[])
{
Matema obj = new Matema();
System.out.println(obj.num);
System.out.println(obj.cuadrado(10));
}
}
No permite que, ni la variable, ni el método sean accedidos por la clase ejemplo.
Al compilar el programa, se genera un error. En el IDE determina que hubo un
error sin compilar
Métodos: Recursividad
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
public class MiClase
{
public static void main(String[] args)
{
int resul = suma(5, 10);
System.out.println(resul);
}
public static int suma(int inicio, int fin)
{
if (fin > inicio)
{
return fin + suma(inicio, fin - 1);
}
else
{
return fin;
}
}
}
Recursividad es la técnica de hacer que una función se
llame a sí misma. Esta técnica proporciona una manera
de dividir los problemas complicados en problemas
simples que son más fáciles de resolver.
Los array se utilizan para almacenar varios valores en una sola variable, en lugar de declarar variables
independientes para cada valor. El tamaño del Array es fijo y no se puede modificar en tiempo de ejecución.
Array
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
Nombre
del array
Índice de un
elemento del array
➢ Un array se declara con corchetes delante
del nombre.
➢ El primer índice de un array es cero.
➢ Los índices de un array siempre deben ser
enteros positivos, sino se genera error en
tiempo de ejecución.
➢ Los índices permiten incluir y acceder a los
valores del array.
Declaración de arrays:.
Los array pueden ser unidimensionales y multidimensionales. En los ejemplos anteriores se presentan dos array
unidimensionales.
Array
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
String[] carros = {"Volvo", "BMW", "Ford"};
int[] miNum = {10, 20, 30, 40};
Declaración de Array de tipo
String donde se asignan los
valores
Declaración de Array de tipo
entero donde se asignan los
valores
El siguiente ejemplo presenta como se declara un array multidimensional:
Los valores se pueden asignar y acceder en un array por medio del índice. Por ejemplo:
Array
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
int[][] arr = new int[3][3];//3 filas y 3 columnas
Declaración de un Array
multidimensional de tipo entero
class tarray
{
public static void main(String args[])
{
int[] a=new int[3];
a[0]=10;
a[1]=20;
a[2]=70;
for(int i=0;i<a.length;i++)
System.out.println( a[i] );
}
}
Declaración de un Array de tipo
entero
Asignación de valores
Bucle for para leer el array
Acceso a un valor en una
posición del array
class tarray3
{
public static void main(String args[])
{
int arr[][]={{1,2,3},{2,4,5},{4,4,5}};
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
System.out.print(arr[i][j]+" ");
}
System.out.println();
}
}
}
El siguiente es un ejemplo de un array multidimensional:
Array
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
Declaración de un Array de dos
dimensiones de tipo entero y
asignación de valores
Bucle for para leer el array
Acceso a un valor en una
posición del array
Pasar y Retornar arrays en métodos:
public class ArraysJava
{
public static void main(String[] args)
{
double[] d = new double[8];
d[2] = 10.25;
d[5] = 15.35;
metedo(d);
System.out.println(d[2]);
System.out.println(d[5]);
}
static void metodo(double[] d)
{
d[2] = 25.32;
d[5] = 45.89;
}
}
Array
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
Se pasan valores al array
Se declara un array de tipo double
Se llama al método y se pasa
como parámetro el array
Método que recibe un array
Pasar y Retornar arrays en métodos:
public class ArraysJava
{
public static void main(String[] args)
{
int[] a = metodo();
System.out.println(a[2]);
System.out.println(a[5]);
}
static int[] metodo()
{
int[] a = new int[8];
a[2] = 10;
a[5] = 20
return a;
}
}
Array
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
Declaración del método donde
se indica que devuelve un array
de enteros
Declaración de array que recibe los
valores devueltos por el método
Declaración del array y
asignación de valores
Retorna el array
La clase Arraylist es un array con la capacidad de incrementar o disminuir el tamaño en forma dinámica. Los
elementos pueden ser adicionados o removidos lo que incrementa o decrementa el tamaño del array.
Arraylist
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
import java.util.ArrayList;
class tarray4
{
public static void main(String args[])
{
ArrayList<String> carro = new ArrayList<String>();
}
}
Se importa el paquete ArrayList
Declaración del arraylist de tipo
string
Métodos de la clase Arraylist:
Arraylist
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
METODO DESCRIPCIÓN EJEMPLO
size() Devuelve el numero de elementos del array (int) carro.size();
add(x) Añade un elemento al final del array. Devuelve true si la operación fue
satisfactoria
carro.add("Volvo");
carro.add("BMW");
add(posición, x) Añade un elemento en la posición especificada carro.add(15, "Volvo");
carro.add(16, "BMW");
get(posición) Devuelve el elemento que está en la posición indicada carro.get(0);
remove(posición) Elimina el elemento que se encuentra en la posición especificada carro.remove(0);
remove(x) Elimina la primera ocurrencia del elemento indicado carro.remove(“Volvo”);
clear() Elimina todos los elementos del array carro.clear();
set(posición, x) Substituye el elemento en la posición indicada por el objeto x carro.set(0, "Opel");
contains(x) Comprueba si el array contiene el elemento x. Devuelve true o false carro.contains(“Ford”)
indexOf(x) Devuelve la posición del elemento indicado. Si no existe, devuelve -1 carro.indexOf(“Mazda”)
Ejemplos de métodos de la clase Arraylist:
Arraylist
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
import java.util.ArrayList;
public class ArrayListTest
{
public static void main(String[] args)
{
ArrayList<String> carro = new ArrayList<String>();
carro.add("Volvo");
carro.add("BMW");
carro.add("Ford");
carro.add("Mazda");
System.out.println(carro);
}
}
Declaración de un ArrayList de
tipo String
Se importa la clase ArrayList
Adición de valores al array
Ejemplos de métodos de la clase Arraylist:
Arraylist
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
public class ArrayListTest2
{
public static void main(String[] args)
{
ArrayList<String> carro = new ArrayList<String>();
carro.add("Volvo");
carro.add("BMW");
carro.add("Ford");
carro.add("Mazda");
for (int i = 0; i < carro.size() ; i++)
{
System.out.println( carro.get(i) );
}
}
}
Bucle for para leer el array
Determina tamaño del array
Obtiene el elemento de posición
especificada por el índice i
public class ArrayList3
{
public static void main(String[] args)
{
ArrayList<String> carro = new ArrayList<String>();
carro.add("Volvo");
carro.add("BMW");
carro.add("Ford");
carro.add("Mazda");
for (String i : carro)
{
System.out.println(i);
}
}
}
Ejemplos de métodos de la clase Arraylist:
Arraylist
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
Bucle for para leer el array
Mismo ejemplo pero utilizando
el bucle for-each
Ordenar un Arraylist. Para ordenar un ArrayList se utiliza la clase Collection que incluye el método sort():
Arraylist
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
import java.util.ArrayList;
import java.util.Collections;
public class ArrayCollsTest
{
public static void main(String[] args)
{
ArrayList<String> carro = new ArrayList<String>();
carro.add("Volvo"); carro.add("BMW");
carro.add("Ford"); carro.add("Mazda");
Collections.sort(carro);
for (String i : carro)
{
System.out.println(i);
}
}
}
Llamado al método sort()
Se importa la clase Collections
Inicio a las clases gráficas
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
Swing in Java es un kit de herramientas de
interfaz gráfica de usuario (GUI) que incluye
un amplio conjunto de opciones que
permiten crear un conjunto sofisticado de
componentes GUI para sus aplicaciones
Java.
Un ejemplo sencillo: La clase JOptionPane, del paquete package javax.swing provee una caja de
diálogo tanto para ingresar como para desplegar datos.
Inicio a las clases gráficas
| Copyright © 2020 Ing. Giovanny Guillén Bustamante
import javax.swing.JOptionPane;
public class CalcularSuma
{
public static void main( String[] args )
{
String primerNum = JOptionPane.showInputDialog( “Ingrese primer entero" );
String segundoNum = JOptionPane.showInputDialog( “Ingrese segundo entero" );
int num1 = Integer.parseInt( primerNum );
int num2 = Integer.parseInt( segundoNum );
int suma = num1 + num2;
JOptionPane.showMessageDialog( null, “La suma es " + suma, “Suma dos enteros", JOptionPane.PLAIN_MESSAGE );
}
}
Fin del módulo II:
Seguidamente el instructor le indicará para realizar las prácticas del módulo.
“La autosuperación es solo el
primer paso hacia la
sabiduría.”
Prácticas
| Copyright © 2020 Ing. Giovanny Guillén Bustamante

Más contenido relacionado

PDF
Curso java desde cero nivel i - modulo iii
PDF
Curso java desde cero nivel i - modulo ii
PDF
Curso java desde cero nivel i - modulo v
PDF
Métodos y Funciones - Java - Algoritmia
PDF
PDF
Interpolaion c++
DOCX
Integrales inmediatas
PPT
Integral indefinida
Curso java desde cero nivel i - modulo iii
Curso java desde cero nivel i - modulo ii
Curso java desde cero nivel i - modulo v
Métodos y Funciones - Java - Algoritmia
Interpolaion c++
Integrales inmediatas
Integral indefinida

La actualidad más candente (20)

DOCX
Curva de daño de un transformador c++
PPTX
Presentacion de antiderivadas
DOCX
Informe tecnico de la unidad 1
PPTX
Integrales infefinidas
PPT
Vectores Matrices I
PPT
6 Upv Solo Pruebas 2009
PPT
1 la antiderivada
DOCX
Matematica antidiferenciación integral indefinida, propiedades
PPTX
Integral Indefinida
PDF
Funciones con vectores y matrices
PDF
Tutorial rapido de octave
PDF
sentenciareturnymetodos
PPT
Programación Modular
PPT
4 variables, arreglos, estructuras y enum
PPT
PPTX
2.1 recursividad
PPTX
PPT
11funciones 1231096290787715-2
PPTX
Video 1 metodos y arreglos
PDF
Unidad3
Curva de daño de un transformador c++
Presentacion de antiderivadas
Informe tecnico de la unidad 1
Integrales infefinidas
Vectores Matrices I
6 Upv Solo Pruebas 2009
1 la antiderivada
Matematica antidiferenciación integral indefinida, propiedades
Integral Indefinida
Funciones con vectores y matrices
Tutorial rapido de octave
sentenciareturnymetodos
Programación Modular
4 variables, arreglos, estructuras y enum
2.1 recursividad
11funciones 1231096290787715-2
Video 1 metodos y arreglos
Unidad3
Publicidad

Similar a Curso java desde cero nivel i - modulo iv (20)

PPTX
MéTodos
PPTX
MéTodos
PPTX
MéTodos
PDF
Sesion 07 nivel_acceso_miembros_clases
PPTX
Metodos 2
PPTX
Metodosenjava 110504201809-phpapp02
PPTX
Metodos en java
PDF
Enums, constantes, listas e interfaces
PDF
Jyoc java-cap05 metodos (funciones)
PDF
PPTX
MéTodos En Java
PDF
Introducción a la programación y la informática. Tema 5
PPT
5 metodos y parametros
PPT
PPTX
MéTodos Java
PPTX
05 Creando Clases
PPTX
Explicacion de programa de progamacion orientada a objetos(en java)
PDF
Tema 9 pruebas unitarias por gio
PPT
3 interfaces clases_abstractas_herencia_polimorfismo
PPTX
Tema1Instrucciones-DeclaracionAsignacion.pptx
MéTodos
MéTodos
MéTodos
Sesion 07 nivel_acceso_miembros_clases
Metodos 2
Metodosenjava 110504201809-phpapp02
Metodos en java
Enums, constantes, listas e interfaces
Jyoc java-cap05 metodos (funciones)
MéTodos En Java
Introducción a la programación y la informática. Tema 5
5 metodos y parametros
MéTodos Java
05 Creando Clases
Explicacion de programa de progamacion orientada a objetos(en java)
Tema 9 pruebas unitarias por gio
3 interfaces clases_abstractas_herencia_polimorfismo
Tema1Instrucciones-DeclaracionAsignacion.pptx
Publicidad

Más de Giovanny Guillen (20)

PPTX
Communication and Tracking the Project Completion.pptx
PPTX
Benefits of Multiculturalism in a Society.pptx
PPTX
Artificial Intelligence What is Threats and Benefits.pptx
PDF
Curso java desde cero nivel i - modulo i
PDF
Cobol training
PDF
Libro Ingeniería del Software
PDF
Portafolio de proyectos
PDF
Seguridad del ibm i as400
PDF
Programacion RPG - Gestión de Errores y Excepciones
PDF
Programacion RPG: Conceptos ILE
PDF
Programacion RPG Operaciones
PDF
Programacion RPG Especificaciones de Entrada y Salida
PDF
Programación RPG - Conceptos
PDF
Organizational values
PDF
IBM i - AS/400 - SDA
PDF
IBM i - Manejo de archivos y datos
PDF
Ingenieria requerimientos
PDF
Earn value
PDF
Gestión de la Capacidad en Fábricas de Software
PDF
Fabricas de software
Communication and Tracking the Project Completion.pptx
Benefits of Multiculturalism in a Society.pptx
Artificial Intelligence What is Threats and Benefits.pptx
Curso java desde cero nivel i - modulo i
Cobol training
Libro Ingeniería del Software
Portafolio de proyectos
Seguridad del ibm i as400
Programacion RPG - Gestión de Errores y Excepciones
Programacion RPG: Conceptos ILE
Programacion RPG Operaciones
Programacion RPG Especificaciones de Entrada y Salida
Programación RPG - Conceptos
Organizational values
IBM i - AS/400 - SDA
IBM i - Manejo de archivos y datos
Ingenieria requerimientos
Earn value
Gestión de la Capacidad en Fábricas de Software
Fabricas de software

Último (20)

DOCX
Conceptos básicos de programación PseInt laura.docx
PDF
sol tecnología 2025.pdf........pdf10-7grado
PDF
¿Qué hace un Data Warehouse Engineer blog.victorsantiz.com.pdf
PDF
1.3.4-Handling-and-Safety-Instructions-ESP-2024.pdf
PDF
PLAN DE ASEGURAMIENTO CURSOS CORTOS 2024.pdf
PDF
EL RESPETO mejororado para aprender .pdf
PDF
Conceptos básicos de programación PseInt laura.pdf
PDF
conceptosbsicosdeprogramacinpseintlaura.pdf
PPT
CONFIGURACIÓN DE PANTALLA DE UNA COMPUTADORA
PDF
Virus y otras amenazas _ Ciudadanía _ INCIBE.pdf
PPTX
Redes neuronales artificiales y como entrenarlas
DOCX
Simulación de corriente paralela en LEDS word
PDF
Estrategia de apoyo de tecnología 9-5 Daylin Castaño
PDF
Sesión 6 - Seguridad de almacenamiento.pdf
PDF
004-CC2014-Irrigacion Mbb equinos del mundo
PPTX
TICs_en_la_vida_Cotidiana_tecnologiayMas
PDF
Introducción a REALITY (agosto de 2024).pdf
PPTX
Simulación de corriente paralela en LEDS PowerPoint
PPTX
VariablesExpresiones.pptx conceptos que puedes usar en c++
PDF
Salud digital: información, integración y el valor de MS Fabric for Health
Conceptos básicos de programación PseInt laura.docx
sol tecnología 2025.pdf........pdf10-7grado
¿Qué hace un Data Warehouse Engineer blog.victorsantiz.com.pdf
1.3.4-Handling-and-Safety-Instructions-ESP-2024.pdf
PLAN DE ASEGURAMIENTO CURSOS CORTOS 2024.pdf
EL RESPETO mejororado para aprender .pdf
Conceptos básicos de programación PseInt laura.pdf
conceptosbsicosdeprogramacinpseintlaura.pdf
CONFIGURACIÓN DE PANTALLA DE UNA COMPUTADORA
Virus y otras amenazas _ Ciudadanía _ INCIBE.pdf
Redes neuronales artificiales y como entrenarlas
Simulación de corriente paralela en LEDS word
Estrategia de apoyo de tecnología 9-5 Daylin Castaño
Sesión 6 - Seguridad de almacenamiento.pdf
004-CC2014-Irrigacion Mbb equinos del mundo
TICs_en_la_vida_Cotidiana_tecnologiayMas
Introducción a REALITY (agosto de 2024).pdf
Simulación de corriente paralela en LEDS PowerPoint
VariablesExpresiones.pptx conceptos que puedes usar en c++
Salud digital: información, integración y el valor de MS Fabric for Health

Curso java desde cero nivel i - modulo iv

  • 1. | Copyright © 2020 Ing. Giovanny Guillén Bustamante | Copyright © 2020 Ing. Giovanny Guillén Bustamante El éxito se alcanza con la constancia Curso Java Desde Cero Nivel I – Módulo IV Métodos y Arrays Agosto 2020
  • 2. Métodos Métodos: Parámetros / Valores de retorno Métodos: Sobrecarga Métodos: Alcance Métodos: Recursividad Arrays Arraylist Inicio a las clases gráficas Contenido Módulo IV 01 02 03 04 05 06 | Copyright © 2020 Ing. Giovanny Guillén Bustamante 07 08
  • 3. Un método es un bloque de código que se ejecuta cuando es invocado desde una instancia de un objeto o desde la misma clase. Métodos | Copyright © 2020 Ing. Giovanny Guillén Bustamante public class Prueba { public static void main(String [] args) { int num = 150; System.out.println("El número es: " + num); int c = cuad(num); System.out.println("El cuadrado es: " + c); } private static int cuad(int num) { return num * num; } } Método main() es el método principal y es llamado de forma automática por la JVM Método declarado dentro de la clase que recibe y retorna un valor Llamado al método que calcula el cuadrado donde se le pasa como parámetro un valor entero. Modificador del método que establece el alcance para su uso.
  • 4. Los métodos se pueden utilizar entre clases, instanciado el objeto de la clase donde está declarado el método. Métodos | Copyright © 2020 Ing. Giovanny Guillén Bustamante package messages; public class TestMsg { public static void main(String [] args) { Msg viewmsg = new Msg(); String msg=Null; msg = viewmsg . dspmsg(); System.out.println(msg); } } package messages; public class Msg { protected String dspmsg() { return “Hola”; } } El operador new, permite declarar un nuevo objeto con la clase declarada Variable inicializada con el objeto instanciado a partir de new Representa el llamado al método constructor de la clase. En este se pueden pasar parámetros. Para utilizar el método, se utiliza un punto al final de la variable que representa al objeto y seguido del método
  • 5. En un método pueden pasar parámetros y a su vez estos pueden ser declarados para retornar un valor. Métodos: Parámetros / Valores de Retorno | Copyright © 2020 Ing. Giovanny Guillén Bustamante Modificador TipoRetorno Nombre ( Lista Parametros ) { // Código} La lista de parámetros, es el tipo, el orden y el número de parámetros de un método. Estos son opcionales, el método puede contener cero parámetros. Estos pueden ser int, boolean, float, double, char, string, o array. Especifica el tipo de retorno del método. Si se indica void, no devuelve valores. Los tipos de datos que puede devolver son int, boolean, float, double, char, string, o array. Indica como se accederá el método. Es opcional. Los tipos de modificadores son Private, Public, Protected, static
  • 6. Ejemplo: Métodos: Parámetros / Valores de Retorno | Copyright © 2020 Ing. Giovanny Guillén Bustamante public class SumaDeVal { static int sumar( int...vals ) { int suma = 0; for (int val : vals) { suma += val; } return sum; } public static void main(String[] args) { int s3 = sumar(1, 2, 3, 4, 5, 6, 7); System.out.println(s3); } } Declaración del método sumar Declaración de valores que recibe el método Declaración de variable que recibe el valor devuelto por el método Llamado del método junto con los valores pasados
  • 7. Java soporta la sobrecarga de métodos, que permite que múltiples métodos tengan el mismo nombre pero diferente parámetros: Métodos: Sobrecarga | Copyright © 2020 Ing. Giovanny Guillén Bustamante public class metodos { static int pMetodo(int x, int y) { return x + y; } static double pMetodo(double x, double y) { return x + y; } public static void main(String[] args) { int myNum1 = pMetodo(8, 5); double myNum2 = pMetodo(4.3, 6.26); System.out.println("int: " + myNum1); System.out.println("double: " + myNum2); } } Declaración del método pMetodo donde recibe dos parámetros enteros y devuelve un entero Declaración del método pMetodo donde recibe dos parámetros double y devuelve un double Llamado a cada uno de los métodos con los respectivos tipos de valores
  • 8. Los métodos, al igual que las variables pueden tener acceso restringido, dependiendo de la forma como fueron declarados. Los modificadores de acceso son: Métodos: Alcance | Copyright © 2020 Ing. Giovanny Guillén Bustamante MODIFICADOR Class Package Subclass Mismo Package Subclass Diferente Package Fuera de la Class public Si Si Si Si Si protected Si Si Si Si No default Si Si Si No No private Si No No No No
  • 9. Modificador public: miembros de datos y métodos pueden ser accedidos desde cual clase y subclase en cualquier paquete. No es recomendable por razones de seguridad de la aplicación. Métodos: Alcance | Copyright © 2020 Ing. Giovanny Guillén Bustamante package pruebaxyz; public class Adicion { public int add(int a, int b) { return a+b; } } package prueba; import pruebaxyz.*; public class Test { public static void main(String args[]) { Adicion obj = new Adcion(); System.out.println(obj.add(10, 21); } } Ambas clases pertenecen a paquetes distintos.
  • 10. Modificador protected: miembros de datos y métodos solo son accesibles por las clases en el mismo paquete y subclases en otros paquetes. Métodos: Alcance | Copyright © 2020 Ing. Giovanny Guillén Bustamante package pruebaxyz; public class Adicion { protected int adciona(int a, int b) { return a+b; } } package prueba; import pruebaxyz.*; public class Test { public static void main(String args[]) { Adicion obj = new Adcion(); obj.adiciona(10, 21); } } Ambas clases pertenecen a paquetes distintos.
  • 11. Modificador default: se limita únicamente al paquete. Ninguna otra clase fuera de este paquete puede tener acceso a esta clase. Métodos: Alcance | Copyright © 2020 Ing. Giovanny Guillén Bustamante package pruebaxyz; public class Adicion { int adciona(int a, int b) { return a+b; } } package prueba; import pruebaxyz.*; public class Test { public static void main(String args[]) { Adicion obj = new Adcion(); obj.adiciona(10, 21); } } Ambas clases pertenecen a paquetes distintos. Al compilar el programa, se genera un error
  • 12. Modificador private: se limita únicamente a la clase. El método no se puede utilizar desde otra clase. Métodos: Alcance | Copyright © 2020 Ing. Giovanny Guillén Bustamante class Matema { private double num = 100; private int cuadrado (int a) { return a*a; } } public class ejemplo { public static void main(String args[]) { Matema obj = new Matema(); System.out.println(obj.num); System.out.println(obj.cuadrado(10)); } } No permite que, ni la variable, ni el método sean accedidos por la clase ejemplo. Al compilar el programa, se genera un error. En el IDE determina que hubo un error sin compilar
  • 13. Métodos: Recursividad | Copyright © 2020 Ing. Giovanny Guillén Bustamante public class MiClase { public static void main(String[] args) { int resul = suma(5, 10); System.out.println(resul); } public static int suma(int inicio, int fin) { if (fin > inicio) { return fin + suma(inicio, fin - 1); } else { return fin; } } } Recursividad es la técnica de hacer que una función se llame a sí misma. Esta técnica proporciona una manera de dividir los problemas complicados en problemas simples que son más fáciles de resolver.
  • 14. Los array se utilizan para almacenar varios valores en una sola variable, en lugar de declarar variables independientes para cada valor. El tamaño del Array es fijo y no se puede modificar en tiempo de ejecución. Array | Copyright © 2020 Ing. Giovanny Guillén Bustamante Nombre del array Índice de un elemento del array ➢ Un array se declara con corchetes delante del nombre. ➢ El primer índice de un array es cero. ➢ Los índices de un array siempre deben ser enteros positivos, sino se genera error en tiempo de ejecución. ➢ Los índices permiten incluir y acceder a los valores del array.
  • 15. Declaración de arrays:. Los array pueden ser unidimensionales y multidimensionales. En los ejemplos anteriores se presentan dos array unidimensionales. Array | Copyright © 2020 Ing. Giovanny Guillén Bustamante String[] carros = {"Volvo", "BMW", "Ford"}; int[] miNum = {10, 20, 30, 40}; Declaración de Array de tipo String donde se asignan los valores Declaración de Array de tipo entero donde se asignan los valores
  • 16. El siguiente ejemplo presenta como se declara un array multidimensional: Los valores se pueden asignar y acceder en un array por medio del índice. Por ejemplo: Array | Copyright © 2020 Ing. Giovanny Guillén Bustamante int[][] arr = new int[3][3];//3 filas y 3 columnas Declaración de un Array multidimensional de tipo entero class tarray { public static void main(String args[]) { int[] a=new int[3]; a[0]=10; a[1]=20; a[2]=70; for(int i=0;i<a.length;i++) System.out.println( a[i] ); } } Declaración de un Array de tipo entero Asignación de valores Bucle for para leer el array Acceso a un valor en una posición del array
  • 17. class tarray3 { public static void main(String args[]) { int arr[][]={{1,2,3},{2,4,5},{4,4,5}}; for(int i=0;i<3;i++) { for(int j=0;j<3;j++) { System.out.print(arr[i][j]+" "); } System.out.println(); } } } El siguiente es un ejemplo de un array multidimensional: Array | Copyright © 2020 Ing. Giovanny Guillén Bustamante Declaración de un Array de dos dimensiones de tipo entero y asignación de valores Bucle for para leer el array Acceso a un valor en una posición del array
  • 18. Pasar y Retornar arrays en métodos: public class ArraysJava { public static void main(String[] args) { double[] d = new double[8]; d[2] = 10.25; d[5] = 15.35; metedo(d); System.out.println(d[2]); System.out.println(d[5]); } static void metodo(double[] d) { d[2] = 25.32; d[5] = 45.89; } } Array | Copyright © 2020 Ing. Giovanny Guillén Bustamante Se pasan valores al array Se declara un array de tipo double Se llama al método y se pasa como parámetro el array Método que recibe un array
  • 19. Pasar y Retornar arrays en métodos: public class ArraysJava { public static void main(String[] args) { int[] a = metodo(); System.out.println(a[2]); System.out.println(a[5]); } static int[] metodo() { int[] a = new int[8]; a[2] = 10; a[5] = 20 return a; } } Array | Copyright © 2020 Ing. Giovanny Guillén Bustamante Declaración del método donde se indica que devuelve un array de enteros Declaración de array que recibe los valores devueltos por el método Declaración del array y asignación de valores Retorna el array
  • 20. La clase Arraylist es un array con la capacidad de incrementar o disminuir el tamaño en forma dinámica. Los elementos pueden ser adicionados o removidos lo que incrementa o decrementa el tamaño del array. Arraylist | Copyright © 2020 Ing. Giovanny Guillén Bustamante import java.util.ArrayList; class tarray4 { public static void main(String args[]) { ArrayList<String> carro = new ArrayList<String>(); } } Se importa el paquete ArrayList Declaración del arraylist de tipo string
  • 21. Métodos de la clase Arraylist: Arraylist | Copyright © 2020 Ing. Giovanny Guillén Bustamante METODO DESCRIPCIÓN EJEMPLO size() Devuelve el numero de elementos del array (int) carro.size(); add(x) Añade un elemento al final del array. Devuelve true si la operación fue satisfactoria carro.add("Volvo"); carro.add("BMW"); add(posición, x) Añade un elemento en la posición especificada carro.add(15, "Volvo"); carro.add(16, "BMW"); get(posición) Devuelve el elemento que está en la posición indicada carro.get(0); remove(posición) Elimina el elemento que se encuentra en la posición especificada carro.remove(0); remove(x) Elimina la primera ocurrencia del elemento indicado carro.remove(“Volvo”); clear() Elimina todos los elementos del array carro.clear(); set(posición, x) Substituye el elemento en la posición indicada por el objeto x carro.set(0, "Opel"); contains(x) Comprueba si el array contiene el elemento x. Devuelve true o false carro.contains(“Ford”) indexOf(x) Devuelve la posición del elemento indicado. Si no existe, devuelve -1 carro.indexOf(“Mazda”)
  • 22. Ejemplos de métodos de la clase Arraylist: Arraylist | Copyright © 2020 Ing. Giovanny Guillén Bustamante import java.util.ArrayList; public class ArrayListTest { public static void main(String[] args) { ArrayList<String> carro = new ArrayList<String>(); carro.add("Volvo"); carro.add("BMW"); carro.add("Ford"); carro.add("Mazda"); System.out.println(carro); } } Declaración de un ArrayList de tipo String Se importa la clase ArrayList Adición de valores al array
  • 23. Ejemplos de métodos de la clase Arraylist: Arraylist | Copyright © 2020 Ing. Giovanny Guillén Bustamante public class ArrayListTest2 { public static void main(String[] args) { ArrayList<String> carro = new ArrayList<String>(); carro.add("Volvo"); carro.add("BMW"); carro.add("Ford"); carro.add("Mazda"); for (int i = 0; i < carro.size() ; i++) { System.out.println( carro.get(i) ); } } } Bucle for para leer el array Determina tamaño del array Obtiene el elemento de posición especificada por el índice i
  • 24. public class ArrayList3 { public static void main(String[] args) { ArrayList<String> carro = new ArrayList<String>(); carro.add("Volvo"); carro.add("BMW"); carro.add("Ford"); carro.add("Mazda"); for (String i : carro) { System.out.println(i); } } } Ejemplos de métodos de la clase Arraylist: Arraylist | Copyright © 2020 Ing. Giovanny Guillén Bustamante Bucle for para leer el array Mismo ejemplo pero utilizando el bucle for-each
  • 25. Ordenar un Arraylist. Para ordenar un ArrayList se utiliza la clase Collection que incluye el método sort(): Arraylist | Copyright © 2020 Ing. Giovanny Guillén Bustamante import java.util.ArrayList; import java.util.Collections; public class ArrayCollsTest { public static void main(String[] args) { ArrayList<String> carro = new ArrayList<String>(); carro.add("Volvo"); carro.add("BMW"); carro.add("Ford"); carro.add("Mazda"); Collections.sort(carro); for (String i : carro) { System.out.println(i); } } } Llamado al método sort() Se importa la clase Collections
  • 26. Inicio a las clases gráficas | Copyright © 2020 Ing. Giovanny Guillén Bustamante Swing in Java es un kit de herramientas de interfaz gráfica de usuario (GUI) que incluye un amplio conjunto de opciones que permiten crear un conjunto sofisticado de componentes GUI para sus aplicaciones Java.
  • 27. Un ejemplo sencillo: La clase JOptionPane, del paquete package javax.swing provee una caja de diálogo tanto para ingresar como para desplegar datos. Inicio a las clases gráficas | Copyright © 2020 Ing. Giovanny Guillén Bustamante import javax.swing.JOptionPane; public class CalcularSuma { public static void main( String[] args ) { String primerNum = JOptionPane.showInputDialog( “Ingrese primer entero" ); String segundoNum = JOptionPane.showInputDialog( “Ingrese segundo entero" ); int num1 = Integer.parseInt( primerNum ); int num2 = Integer.parseInt( segundoNum ); int suma = num1 + num2; JOptionPane.showMessageDialog( null, “La suma es " + suma, “Suma dos enteros", JOptionPane.PLAIN_MESSAGE ); } }
  • 28. Fin del módulo II: Seguidamente el instructor le indicará para realizar las prácticas del módulo. “La autosuperación es solo el primer paso hacia la sabiduría.” Prácticas | Copyright © 2020 Ing. Giovanny Guillén Bustamante