Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

JF 2 14 SG Esp

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 32

1

Java Fundamentals
2-14
Clases y métodos Java

Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas
comerciales de sus respectivos propietarios.

2
Objetivos
• En esta lección se abordan los siguientes objetivos:
−Describir un método, una clase y una instancia
−Describir un escenario en el que se pueda utilizar una
estructura de control IF
−Describir un escenario en el que se pueda utilizar una
estructura de control WHILE
−Reconocer la sintaxis de un método, una clase, una función y
un procedimiento
−Describir la entrada y salida

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 3
comerciales de sus respectivos propietarios.

3
Alice 3 frente a Java
Alice 3 Java
Entorno programación en 3D que utiliza Lenguaje de programación con sintaxis
representaciones visuales para el lenguaje que se puede editar mediante un entorno
de programación Java de desarrollo integrado (IDE)
Se utiliza para crear animaciones o juegos
Se utiliza para crear aplicaciones que se
interactivos al mismo tiempo que se
ejecuten en cualquier plataforma,
trabaja con construcciones de
incluida la web, mediante sintaxis Java
programación
Interfaz de arrastrar y soltar diseñada para Gracias a IDE puede modelar los objetos
reducir los errores de sintaxis y facilitar el del mundo real, permite la reutilización y
aprendizaje de la programación un mantenimiento más sencillo

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 4
comerciales de sus respectivos propietarios.

4
Procedimientos en Alice 3
• En Alice 3, un procedimiento es un fragmento de
código que envía un mensaje a un objeto para que éste
realice una acción
• Un procedimiento no devuelve un valor
• Un juego de procedimientos disponibles para cada
clase

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 5
comerciales de sus respectivos propietarios.

Los procedimientos se utilizan en Alice 3 para hacer que los objetos realicen una acción.

5
Panel de métodos en Alice 3
• El panel de métodos muestra todos los procedimientos
y funciones de un objeto
• Contiene todos los procedimientos y funciones
integrados y definidos por el usuario disponibles para
cada uno de los objetos de la animación

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 6
comerciales de sus respectivos propietarios.

El panel de métodos proporciona los procedimientos y funciones relevantes para el objeto que
ha seleccionado en la lista desplegable.

6
Declaración de procedimientos en Alice 3
• Puede declarar (crear) sus propios procedimientos de
Alice 3

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 7
comerciales de sus respectivos propietarios.

Debe crear sus propios procedimientos si ha identificado varios objetos que lleven a cabo la
misma acción o si va a escribir el mismo código en más de una ocasión.

7
Métodos en Java
• Los métodos en Java son los mismos que los
procedimientos de Alice 3
• Un método es un fragmento de código que envía un
mensaje a un objeto para que éste realice una acción
Los métodos:
−Pertenecen a una clase
−Se designan con un nombre
−Se pueden llamar en cualquier punto de un programa con el
nombre del método
• Cuando se encuentra un nombre de método en un
programa, se ejecuta

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 8
comerciales de sus respectivos propietarios.

Al pasar a Greenfoot y Eclipse todo el código se describe como métodos. Tendrá métodos
(procedimientos) nulos que realicen acciones y métodos no nulos (funciones) que devuelvan
información.

8
Ejemplo de métodos en Java
• Cuando termina el método, la ejecución vuelve al área
del código de programa desde el que se llamó, y el
programa continúa en la siguiente línea de código

public static void main (String[] args) Método 1


{
statement; …
method1(); …
statement; Método 2

method2(); …
statement; …
}

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 9
comerciales de sus respectivos propietarios.

Las llamadas a métodos se ejecutan de la misma forma que cuando se utilizan funciones o
procedimientos definidos por el usuario en Alice 3.

9
Decisiones para cada método
• Se deben tomar tres decisiones para cualquier método:
−Qué debe hacer el método
−Qué entradas necesita el método
−Qué respuesta devuelve el método
• Sintaxis Java para un método:

[modifiers] dataType methodName(parameterList) {


//methodBody
return result;
}

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 10
comerciales de sus respectivos propietarios.

El modificador, el tipo de dato, el nombre y la lista de parámetros se denominan firma del


método en Java.

10
Propiedades del método
Propiedad del método Descripción
Son opcionales y pueden ser públicos, privados,
modifiers
protegidos o dejarse en blanco
dataType Tipo de dato, como int
methodName Nombre del método
Lista separada por comas de nombres de parámetros con
parameterList sus tipos de dato; cada parámetro se muestra con su tipo
de dato en primer lugar y, a continuación, con su nombre
methodBody Juego de instrucciones que realizan la tarea
Palabra clave que envía el valor del resultado en el código
return
que llama al método

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 11
comerciales de sus respectivos propietarios.

Todos estos términos se explicarán con más detalle en las futuras secciones de este curso. De
momento, intente comprender para qué se utilizan.

11
Método findMax()
public class TestFindMax {
/** Main method */
public static void main(String[] args) {
int i = 5;
int j = 2;
int k = findMax(i, j);
System.out.println("The maximum between " + i + " and " + j +
" is " + k);
}//end method main
/** Return the max between two numbers */
public static int findMax(int num1, int num2) {
int result;
if (num1 > num2)
result = num1; Método
else findMax
result = num2;
//endif
return result;
}//end method findMax

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 12
comerciales de sus respectivos propietarios.

Observando el código de esta sección, intente identificar las secciones con las que ya está
familiarizado. En este ejemplo hay algunas declaraciones de variables (int i = 5 ;), una llamada a
un método (findMax(i, j);) y una sentencia If Else. Ha utilizado todas estas sentencias en Alice 3.

12
Clases en Alice 3
• Dalmatian es un perro
• Cuando se agrega un objeto Dalmatian a una escena,
tiene las propiedades de la clase Dalmatian:
−cuatro patas, dos orejas, un pelaje blanco y negro moteado, y
la capacidad de caminar
Una clase es una especificación, como un modelo o diseño, de cómo crear un
objeto.

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 13
comerciales de sus respectivos propietarios.

Una clase es el código que define qué información se almacena sobre un objeto y lo que el
objeto puede hacer. Una clase se convierte en un objeto al asignarle valores. Un perro es una
clase, pero un perro dálmata (Dalmatian) es un objeto o una "instancia" de la clase perro porque es un
perro con valores específicos.

13
Clases en Java
• El primer grupo:
−Opcional; hace referencia a la visibilidad de otros objetos
−public significa que es visible en todas partes
−El valor por defecto es un paquete o visible solo dentro del
paquete actual

["public"] ["abstract"|"final"]"class" Class_name


["extends" object_name] ["implements" interface_name]
"{"
// properties declarations
// behavior declarations
"}"

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 14
comerciales de sus respectivos propietarios.

Las siguientes diapositivas son muy técnicas, no se preocupe si no las comprende


completamente. La información se tratará en mayor profundidad más adelante en el curso.

14
Clases en Java
• El segundo grupo:
−Opcional; define si la clase se puede heredar o si se puede
ampliar con otras clases
−Las clases abstractas se deben ampliar y las clases finales no
se pueden ampliar nunca por herencia
−El valor por defecto indica que la clase se puede o no ampliar
a discreción de los programadores
["public"] ["abstract"|"final"]"class" Class_name
["extends" object_name] ["implements" interface_name]
"{"
// properties declarations
// behavior declarations
"}"

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 15
comerciales de sus respectivos propietarios.

15
Clases en Java
• Class_name es el nombre de la clase
• La tercera opción de ampliación está relacionada con la
herencia
• La cuarta opción de implantaciones está relacionada
con las interfaces

["public"] ["abstract"|"final"]"class" Class_name


["extends" object_name] ["implements" interface_name]
"{"
// properties declarations
// behavior declarations
"}"

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 16
comerciales de sus respectivos propietarios.

16
Código para crear la clase Cat en Java
class Cat{
int catAge;
String catName;

public Cat(String name){


catName = name;
}//end of constructor

public void setAge(int age){


catAge = age;
}//end method setAge

public int getAge(){


return catAge;
}//end method getAge

public static void main(String []args){


Cat myCat = new Cat("Garfield");
myCat.setAge(6);
System.out.println("Cat age: " + myCat.getAge());
}//end method main
}//end class Cat

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 17
comerciales de sus respectivos propietarios.

Esta clase tiene dos variables para el nombre y la edad del gato. También dispone de dos
métodos, uno que permite definir la edad del gato y otro que especifica la edad del gato. Todas
las variables de una clase deben tener un método set y otro get asociados.

17
Instancias en Alice 3
• Al agregar un objeto a una escena, se crea una
instancia de la clase

Un objeto es una instancia de una clase.

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 18
comerciales de sus respectivos propietarios.

Puede tener varias instancias de la misma clase dentro de una escena. En este ejemplo hay una
instancia de Cat, sin embargo hay varias instancias de naipes. Todas las instancias de una clase
tendrán el mismo comportamiento.

18
Instancias en Java
• En el método main, se crea la instancia myCat de la
clase Cat
class Cat{
int catAge;
String catName;



public static void main(String []args){
Cat myCat = new Cat("Garfield");
myCat.setAge(6);
System.out.println("Cat age: " + myCat.getAge());
}//end method main
}//end class Cat

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 19
comerciales de sus respectivos propietarios.

Para crear una instancia de una clase debe utilizar la sentencia new en Java.

19
Creación de una instancia de una clase
• Para crear una instancia de una clase se utiliza el
operador new, seguido del nombre de la clase
class Cat{
int catAge;
String catName;



public static void main(String []args){ Creación de una
Cat myCat = new Cat("Garfield"); nueva instancia
myCat.setAge(6);
System.out.println("Cat age: " + myCat.getAge());
}//end method main
}//end class Cat

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 20
comerciales de sus respectivos propietarios.

20
Estructuras de control
• Las estructuras de control permiten cambiar el orden
de ejecución de las sentencias en los programas
• Tanto Alice como Java permiten realizar estos tipos de
estructuras de control

Tipo Descripción Ejemplo


Estructuras de control Permiten seleccionar secciones
if … then … else
de decisión específicas de código para su ejecución
Estructuras de control Permiten ejecutar secciones específicas
ciclo while
de recuperación de código varias veces

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 21
comerciales de sus respectivos propietarios.

Para acceder a las estructuras de control en Alice, arrástrelas a la barra del editor de códigos en
la parte inferior de la pantalla.

21
Estructura de control IF
• Las estructuras de control IF son sentencias que
permiten seleccionar y ejecutar determinados bloques
de código mientras se omite otras secciones
• Estas estructuras tienen el siguiente formato

if (boolean_expression) {
doSomething();
}
else {
doSomethingElse();
}//endif

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 22
comerciales de sus respectivos propietarios.

Una sentencia If se ejecuta si la condición es verdadera. Recuerde que la sentencia Else es


opcional y no es necesario incluirla.

22
Ejemplo de estructura de control IF
• Por ejemplo:
−Si un estudiante recibe una puntuación del 90% o mayor en
su prueba, se le asignará una "A"
−Si un estudiante recibe una puntuación igual o mayor que
80% y menor que 90 %, se le asignará una "B"
−Si un estudiante recibe una puntuación igual o mayor que
65% y menor que 80%, se le asignará una "C"
−Si un estudiante recibe menos del 65 %, se le asignará una "F"

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 23
comerciales de sus respectivos propietarios.

23
Código de ejemplo de estructuras de control IF
public class Grade {
public static void main( String[] args ){
//variable declaration section
double grade = 89.0;

if( grade >= 90 ){


System.out.println( "A" );
}
else if( (grade < 90) && (grade >= 80)){
System.out.println("B" );
}
else if( (grade < 80) && (grade >= 65)){
System.out.println("C" );
}
else{
System.out.println("F");
}//endif
}//end method main
}//end class Grade

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 24
comerciales de sus respectivos propietarios.

En este código, una vez que se detecta una condición verdadera, el programa para la
comprobación de las sentencias Else If anidadas. Este es el objetivo de la anidación en la
sentencia Else.

24
Estructura de control while
• Una estructura de control while, o ciclo while, es una
sentencia Java o un bloque de sentencias que permiten
ejecutar bloques específicos de código repetidamente,
siempre que se cumplan determinadas condiciones
• La condición se comprueba antes de cada ciclo
• Formato del ciclo while:
while( boolean_expression ){
statement1;
statement2;
. . .
}

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 25
comerciales de sus respectivos propietarios.

25
Ejemplo de estructuras de control while
class WhileDemo {
public static void main(String[] args){
//variable declaration section
int count = 1;

while (count < 11) {


System.out.println("Count is: " + count);
count++;
}//end while

}//end method main

}//end class WhileDemo

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 26
comerciales de sus respectivos propietarios.

En un ciclo while, debe asegurarse de que la condición de terminación se puede cumplir o, de


lo contrario, entrará en un ciclo infinito. Por este motivo, el valor del recuento aumenta en uno
cada vez que el código inicia el ciclo. Una vez que el valor del recuento sea igual o mayor que
once, la condición será falsa y terminará el ciclo.

26
Entrada y salida
• Los programas Java funcionan en muchas plataformas
• Pueden ser programas simples que se ejecutan desde
la línea de comandos, o bien pueden tener complejas
interfaces gráficas de usuario
• Cuando aprenda a programar, creará programas que
utilicen la línea de comandos únicamente para su
entrada y salida
• Con más experiencia, podrá crear interfaces gráficas de
usuario y aprender más sobre las bibliotecas
necesarias para su creación

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 27
comerciales de sus respectivos propietarios.

27
Código de entrada y salida
• Imprimir en el ejemplo de la pantalla
System.out.println("Hello World!");

• System.out.println() es un fragmento de código que


está disponible automáticamente para cada programa
Java

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 28
comerciales de sus respectivos propietarios.

Es similar al procedimiento Say o Think en Alice 3.

28
Ejemplo de código de entrada y salida
• Ejemplo de entrada del usuario con el paquete
java.util.Scanner
import java.util.Scanner;
public class ReadString {
public static void main (String[] args) {
System.out.print("Enter your name: ");
Scanner in = new Scanner(System.in);
String userName = null;
userName = in.nextLine();
System.out.println("Thanks for the name, " + userName);
}//end method main
}//end class ReadString

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 29
comerciales de sus respectivos propietarios.

Aquí se utiliza un objeto de la clase Scanner para permitir la entrada. La mayoría de los
programas necesitarán alguna interacción con el usuario, por lo que la entrada y salida es muy
importante. En Alice, las funciones getWholeNumber, getDecimalNumber, etc. realizaban la
entrada.

29
Terminología
• Términos clave que se han utilizado en esta lección:
−Clase
−Estructura de control
−Estructura de control IF
−Instancia
−Método
−Estructura de control WHILE

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 30
comerciales de sus respectivos propietarios.

30
Resumen
• En esta lección, debe haber aprendido a:
−Describir un método, una clase y una instancia
−Describir un escenario en el que se pueda utilizar una
estructura de control IF
−Describir un escenario en el que se pueda utilizar una
estructura de control WHILE
−Reconocer la sintaxis de un método, una clase, una función y
un procedimiento
−Describir la entrada y salida

JF 2-14 Copyright © 2022, Oracle y/o sus filiales. Oracle, Java y MySQL son marcas comerciales
Clases y métodos Java registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas 31
comerciales de sus respectivos propietarios.

31
32

También podría gustarte