Está en la página 1de 58

1

Java Fundamentals
4-2:
Clases de objeto y piloto

Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados.

2
Objetivos
• Esta lección abarca los siguientes temas:
−Describir el formato general de un programa en Java
−Describir la diferencia entre una clase de objeto y una clase
de controlador
−Acceder a un mínimo de dos clases de API de Java
−Explicar y dar ejemplos de las palabras clave de Java
−Crear una clase de objeto
−Crear una clase de controlador

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 3

3
Formato general de programas en Java
• Hay dos formatos generales de clases Java:
−Clases de controladores
−Clases de objetos

JF 4-2
JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 4
Clases de objeto y piloto

4
Clases de controladores
• Clases de controladores:
−Contienen un método principal
• El método principal es necesario para ejecutar un programa Java en
Eclipse
• El método principal puede incluir:
− Instancias de objetos de una clase de objeto
− Variables
− ciclos, sentencias condicionales (if-else)
− Otra lógica de programación
−También puede contener otros métodos estáticos

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 5

Si tú han tenido Greenfoot, main() es similar a act() y que este es el punto donde se inicia el
programa. Sin embargo, a diferencia de Greenfoot, el programa Java solo ejecutará un método
main(), mientras que un programa Greenfoot puede tener muchos métodos act() activos.
Un proyecto Java puede tener más de una clase de controlador, es decir, uno para cada clase de
objeto para probar y depurar, y otro para el lanzamiento del programa principal.

5
Clases de objetos
• Clases de objetos:
−Las clases que definen objetos ¿se utilizan en una clase de
controlador?
−¿Se pueden encontrar en las API de Java? o ¿las puede crear
usted?
−Ejemplos: string, BankAccount, estudiante, rectángulo

La API de Java es una librería de paquetes y clases de objetos que ya


están escritos y se encuentran disponibles para usar en sus
programas.

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 6

6
La API de Java
• La documentación Java API está ubicada aquí :
−http://docs.oracle.com/javase/8/docs/api/
Detalles para la clase
seleccionada de la lista
Paquetes de clases

Clases

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 7

7
La API de Java: Clase de String
• Desplácese por la lista de clases hasta ver String, luego
haga clic en el enlace
• Deberá ver lo siguiente: Detalles para la
clase de String

Desplácese
hacia abajo
en la lista
hasta String

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 8

8
La API de Java: Examine la clase de String
• Examine y analice los constructores y métodos

Detalles para la
clase de String

Desplácese
hacia abajo
en la lista
hasta String

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 9

9
La API de Java: clase de String
• Usaremos la clase de String en programas
• El constructor más común para esta clase es:
−String(String original)
• Los métodos comunes incluyen:
Método Descripción

charAt(int index) Devuelve el valor char al índice especificado.

length() Devuelve la longitud de este string.


Devuelve un nuevo string, que es un substring de
substring(int beginIndex)
este string.

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 10

10
Una clase de objeto simple creada por un
programador: Estudiante
• Una clase Java se usa para almacenar o representar
datos para el objeto que la clase representa
• Hay varias clases ya disponibles de la API de Java, pero
deseará crear muchas más
• Por ejemplo, podemos crear un modelo o una
representación de programación de un estudiante
• La información que podríamos necesitar para un
estudiante incluye la identificación del estudiante, el
nombre y GPA (promedio)

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 11

11
Una clase de objeto simple creada por un
programador: Estudiante
• En esta lección, crearemos una clase de objeto llamada
Estudiante, luego una clase de controlador llamada
StudentTester
• Todas las clases de Java se crean en un archivo de texto
con el mismo nombre de la clase
• Estos archivos también tienen una extensión .java
• En esta lección, crearemos una
clase clase StudentTeste
en Eclipse

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 12

Eclipse creará y nombrará automáticamente los archivos de código fuente .java y, tras la
compilación, los archivos de código de bytes .class.

12
Sintaxis para crear una clase de objeto simple creada
por programador
• El siguiente es un ejemplo de sintaxis para crear una
clase de objeto creada por programador.
• Las palabras clave de Java son:
−paquete (opcional)
−importar (opcional)
−clase pública
package <package_name>;
import <other_packages>;
public class ClassName
{
<variables (also known as fields)>;
<constructor method(s)>;
<other methods>;
}

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 13

Las variables de clase se denominan a veces "variables de instancia" para distinguirlas de las "variables
locales".

13
Términos clave
Término Definición
• Define dónde vive esta clase con relación a otras clases y brinda un
nivel de control de acceso.
palabra clave paquete
• Use modificadores de acceso (públicos y privados) para controlar el
acceso.
• Define otras clases o grupos de clases que usted usa en su clase.
palabra clave importar • La sentencia de importación brinda información del compilador que
identifica las clases externas usadas con la clase actual.
• Precede al nombre de la clase.
• El nombre de la clase y el nombre del archivo deben coincidir cuando
palabra clave clase la clase se declara pública (recomendado). Sin embargo, la palabra
clave pública en frente de la palabra clave clase es un modificador y no
se requiere.
variables o campos de
instancias de clase • Las variables o los datos asociados con los programas (como los
(generalmente números enteros, strings, arreglas y referencias a otros objetos).
abreviado a campos)

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 14

Los paquetes se describen de forma exhaustiva en la programación Java.

14
Términos clave
Término Definición
• Métodos invocados durante la creación(creación de instancia)
Constructores de un objeto (una representación en la memoria de una clase
de Java).
• Métodos que se pueden llevar a cabo en un objeto. También
se los conoce como métodos de instancia. Los métodos
Métodos pueden devolver los valores de las variables de un objeto
(algunas veces denominadas funciones) o pueden cambiar los
valores de las variables de un objeto.

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 15

15
Palabas clave de Java
• Todos los programas de Java usan palabras clave de
Java
• Entre los ejemplos se incluyen las siguientes palabras:
class, public, String, int, for, while y double
• El color de la fuente de las palabras clave cambia en el
editor de Eclipse
• Lista de palabras clave de Java:
−http://docs.oracle.com/javase/tutorial/java/nutsandbolts/key
words.html
Una palabra clave de Java es una palabra con una función especial en
el lenguaje Java y no se puede usar como nombres para clases,
métodos o variables.

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 16

Otro nombre para referirse a las palabras clave es "palabra reservada".

16
Convenciones de nomenclatura de programas Java
• Convenciones de nomenclatura para un programa Java:
−El nombre del paquete opcional se define antes de una
sentencia de importación en minúscula estilo CamelCase
−Las sentencias de importación opcionales se definen a
continuación del nombre del paquete
−El nombre de la clase es un sustantivo etiquetado con
mayúscula estilo CamelCase

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 17

17
Letra estilo CamelCase
• CamelCase es la práctica de escribir palabras
encadenadas, poniendo en mayúscula la primera
letra de cada palabra y eliminando espacios
• Las minúsculas estilo CamelCase encadenan palabras con la
primera letra en mayúscula pero la palabra principal no
lleva mayúscula
• Por ejemplo:
− thisIsLowerCamelCase
• Las mayúsculas estilo CamelCase encadenan palabras con
la primera letra en mayúscula pero la palabra principal lleva
mayúscula
• Por ejemplo:
− ThisIsUpperCamelCase.

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 18

18
Convenciones de nomenclatura adicionales para un
programa Java
• Convenciones de nomenclatura adicionales para un
programa Java:
−Los nombres de variables son breves pero significativos en
minúsculas estilo CamelCase
−Los nombres constantes se declaran en letras mayúsculas con
el modificador final
−Los constructores llevan el mismo nombre que la clase
−Los métodos se definen en
verbos en minúscula estilo
CamelCase

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 19

19
Ejemplo de convenciones de nomenclatura
• Las pautas para una clase de objeto creado por un
programador se etiquetan en este ejemplo para el Estudiante
− Crear este archivo en Eclipse // es el símbolo para comentarios
package com.example.domain; // Package Declaration
import java.util.Scanner; // An Import Statement for other packages
public class Student { // Class Declaration for this file
private int studentId; // Variable Declarations for this class
private String name;
private String ssn;
private double gpa;
public final int SCHCODE = 34958// A Constant Declaration
public Student(){ // A Constructor
}//end constructor
public int getStudentId(){ // An accessor Method
return studentId;
}//end method studentId
public void setStudentId(int x){ // A mutator Method
studentId = x;
}//end method setStudentId
}//end class Student

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 20

Muchos métodos tienen nombres que comienzan por set, get, is, has, etc.

20
Una clase de objeto simple creada por un
programador: Estudiante
• La palabra clave opcional del paquete se usa en Java
para agrupar clases
−Un paquete se implementa como una carpeta
−Como carpeta, proporciona un espacio de nombres a una
clase
−Siempre se recomienda identificar al paquete adelante de la
clase
package com.example.domain;

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 21

21
Una clase de objeto simple creada por un
programador: Estudiante
• En el ejemplo a continuación, la clase Estudiante y la
clase Profesor podrían estar en una carpeta con el
nombre de dominio de cada desarrollador
• Si para la empresa Acme, el nombre de los
desarrolladores es Smith y Jones, el paquete podría
ser:
−paquete com.acme.smith
−paquete com.acme.jones

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 22

22
Una clase de objeto simple creada por un
programador: Estudiante
• La ruta para el archivo de Jones se muestra a
continuación

Namespace View for Jones: Vista de carpeta para Jones:


• com.acme.jones +com
• Estudiante |_+acme
• Profesor |_+jones
|_+Student.java
|_+Teacher.java

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 23

23
Palabra clave importar
• La palabra clave importar se usa para identificar
paquetes o clases de objetos que desea usar en su
clase
• Puede importar una sola clase en todo el paquete
• Puede incluir múltiples sentencias de importación
• Las sentencias de importación siguen la declaración del
paquete y preceden la declaración de clase

import java.util.Scanner;

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 24

24
Import Statements
• No se requiere una sentencia de importación y de
forma predeterminada, su clase siempre importa
java.lang desde la API
• http://docs.oracle.com/javase/8/docs/api/java/lang/Package.html
• No es necesario que importe clases que se encuentran
en el mismo paquete que la sentencia de importación

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 25

25
Ejemplos de sentencia de importación
• Ejemplos adicionales de sentencias de importación:

import java.util.Date; //Import the individual class.


import java.util.*; //Import the entire package.
import java.util.Date; //Import using multiple statements.
import java.util.Calendar;

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 26

Ya que * importará todas las clases desde un paquete, puede resultar útil que tú asignen un
nombre a las clases específicas en el paquete y, de este modo, mejorará tu aprendizaje.

En Eclipse, si se mantiene pulsada la tecla ctrl-mayús-O (letra O), se agregarán las sentencias de
importación adecuadas.

26
Variables para clase de Estudiante
• Además de la sentencia del paquete y las sentencias de
importación, la clase de Estudiante podrá contener
variables para identificación del estudiante, número de
seguro social, promedio y código de colegio
• Requerirá la definición de una clase con las variables
de la clase y un constructor
• Además, se agregarán métodos
que podrán acceder y cambiar
las variables

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 27

No debe confundir el uso de la "variable de clase" en el sentido de los campos con variables
estáticas, que también se denominan variables de clase.

27
La clase de Estudiante
package com.example.domain;
public class Student { Declaración de clase
private int studentId;
private String name;
private String ssn; Campos/variables
private double gpa;
public final int SCHCODE = 34958;

public Student(){ Constructor


}//end constructor

public int getStudentId(){


return studentId; Métodos
}//end method getStudentId

public void setStudentId(int x){ Modificador de acceso


studentId = x;
}//end method setStudentId
}//end class Student

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 28

28
Convenciones para la declaración de clases
• Convenciones para la declaración de clases:
−El nombre de la clase debe ser el mismo nombre del archivo
que fue creado en Eclipse
−El nombre debe comenzar con un carácter y puede contener
números, _ o $
−Use mayúsculas estilo CamelCase si el nombre contiene más
de una palabra
−Para una clase de objeto simple creado por programador, el
modificador de acceso deberá ser público (todos los
modificadores de acceso son públicos, privados o protegidos)
public class Student{} Todos los códigos para esta clase deben
estar delimitados entre corchetes { }.

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 29

Los identificadores nombrados por los usuarios rara vez utilizan $ o _ en Java.

29
Convenciones para las variables de clases
• Convenciones para las variables de clases:
−Las variables de clases se deberán declarar con el modificador
de acceso privado para proteger los datos
−El nombre de las variables de clases se establece usando
minúsculas estilo CamelCase
−La excepción es la constante (un valor que no cambia) cuyo
nombre debe ser determinado usando mayúsculas y
declarado como público para permitir el acceso de los
programas del controlador al valor

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 30

La protección de los valores de campo con privado se conoce como encapsulación. Ésta es una
de las afirmaciones básicas de un lenguaje de programación orientado al objeto junto con la
herencia y el polimorfismo.

30
Ejemplos de declaración de variables de clases
• Ejemplos de declaración de variables de clases:
−private int studentId;
−private int width;
−private double area;
//constant
−public final double SCALE = 0.25;
−private String name;

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 31

31
Métodos de constructor
• Un método de constructor es único en Java porque:
−el método crea una instancia de la clase
−los constructores siempre tienen el mismo nombre que la
clase y no declaran un tipo de retorno

public Student()
{
Todos los códigos para este método deben
estar delimitados entre corchetes { }.
}//end constructor

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 32

Las llaves también pueden recibir el nombre de "curly brackets".

32
Métodos de constructor
• Con los métodos de constructor:
−Puede declarar más de un constructor en una declaración de
clase
−No debe declarar a un constructor, de hecho, Java le brindará
un constructor predeterminado (en blanco) para usted
−Si declara uno o más constructores, Java no le brindará un
constructor predeterminado

public Student()
{
Todos los códigos para este método deben
estar delimitados entre corchetes { }.
}//end constructor

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 33

33
Constructores sin parámetros
• Si crea un constructor sin parámetros (el paréntesis está
vacío), puede dejar el contenido del constructor en
blanco (entre { y })
• Se denomina constructor predeterminado y es lo mismo
que el constructor provisto por Java, si no lo declara
• Este constructor inicializa las variables numéricas de la
clase en cero y las variables del objeto (como los Strings)
en nulo
public Student()
{
Sin parámetros
}//end constructor

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 34

34
Constructores sin parámetros
• Si crea un constructor sin parámetros (el paréntesis
está vacío), puede inicializar también las variables
entre { y }
−Se denomina también constructor predeterminado
−Este constructor inicializa las variables numéricas de la clase
en cero y las variables del objeto (como los Strings) en nulo
−Los resultados son iguales a la diapositiva anterior, pero los
valores son más evidentes
public Student(){
studentId = 0;
name = ""; Sin parámetros
ssn = "";
gpa = 0.0;
}//end constructor

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 35

35
Constructores con parámetros
• Si crea un constructor con parámetros (el paréntesis
NO está vacío), podrá inicializar también las variables
entre { y }
• Este constructor inicializará las variables de clases con
los valores que se envían desde la clase del controlador
principal
public Student(int x, String n, String s, double g){
studentId = x;
name = n;
ssn = s;
gpa = g;
}//end constructor

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 36

36
Ejemplo de constructor predeterminado
• El método del constructor en este ejemplo
corresponde a un constructor predeterminado que
crea una instancia de Estudiante
package com.example.domain;
public class Student
{
private int studentId;
private String name;
private String ssn;
private double gpa;
public final int SCHCODE = 34958;
public Student(){
}//end constructor
public int getStudentId(){
return studentId;
}//end method getStudentId
}//end class Student

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 37

37
Ejemplo de constructor predeterminado
• El ejemplo del Estudiante en la diapositiva anterior
ilustra un constructor simple sin argumento
• El valor devuelto desde el constructor es una
referencia de un objeto Java del tipo creado
• Recuerde, los constructores también pueden tomar
parámetros

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 38

38
Constructores
• Un constructor es un método que crea un objeto
• En Java, los constructores son métodos con el mismo
nombre que la clase usada para crear una instancia de
un objeto
• Los constructores se invocan usando la nueva palabra
clave
• Ejemplo del código que se podrá usar en una clase de
controlador para crear un objeto desde el constructor
del
• Estudiante:
Student stu = new Student();

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 39

Los constructores no tienen un tipo de retorno porque siempre devuelven una nueva instancia
de la clase (un objeto).

39
Método principal
• Para ejecutar un programa Java debe definir un
método principal en una clase de controlador
• El nombre del método principal se determina
automáticamente cuando se establece el nombre de la
clase
• Recuerde que el nombre del archivo debe ser el mismo
que la clase

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 40

Puede hacer que Eclipse cree el método main() por usted cuando se cree la clase.

40
Una clase de controlador simple creada por un
programador: StudentTester
• Para los ejemplos de este curso, en general usaremos
el nombre de la clase de objeto seguido por la palabra
“Tester”
• A continuación se incluye un ejemplo de una clase de
controlador Java simple denominado StudentTester
con el método principal
public class StudentTester
{
public static void main(String args[])
{
}//end method main
}//end class StudentTester

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 41

41
Una clase de controlador simple creada por un
programador: Ejemplo 1 de StudentTester
• En este ejemplo, se agrega una sentencia para crear un
objeto de Estudiante
• Se crea un Estudiante y las variables de la clase se
inicializan como se indicó anteriormente para los
constructores predeterminados

public class StudentTester


{
public static void main(String args[])
{
Student s1 = new Student();
}//end method main
}//end class StudentTester

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 42

42
Una clase de controlador simple creada por un
programador: Ejemplo 2 de StudentTester
• En este ejemplo, la sentencia para crear un objeto de la
clase Estudiante es diferente
• Este Estudiante se crea usando parámetros
• ¿Puede adivinar la identificación de este estudiante?
¿Nombre? ¿Número de seguro social? ¿Promedio?
• Agregue otro estudiante usando el constructor
public class StudentTester
{
public static void main(String args[]
{
Student s1 = new Student(123, "Mary Smith", "999-99-9999", 3.4);
}//end method main
}//end class StudentTester

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 43

43
Mejora de la clase de objeto del Estudiante
• Los entornos de desarrollo integrados más actuales
ofrecen un método sencillo para generar
automáticamente los métodos de descriptor de acceso
(captador) y descriptor de mutación (establecedor)
• El método toString() es otro método útil en el
momento de probar, crear y modificar objetos
• En las diapositivas siguientes, desarrollaremos nuevos
métodos para la clase de objeto Estudiante y
modificaremos la clase de controlador StudentTester
para probarlos

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 44

44
Métodos del descriptor de acceso y descriptor de
mutación
• Es común crear un conjunto de métodos que
manipulan y recuperan valores de datos de las clases:
−Descriptores de accesos (captadores):
• métodos que devuelven (captan) el valor de cada variable de la clase.
−Descriptores de mutación (establecedores):
• métodos que cambian (establecen) el valor de cada variable de la
clase.

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 45

Estos son necesarios puesto que normalmente tenemos campos privados. Además de
establecer simplemente los valores de campo, también se pueden utilizar métodos setter para
validar datos.

45
Métodos de descriptores de accesos y descriptores de
mutación para mejorar la clase del objeto Estudiante
• Ejemplos (a continuación):
−Agregar los siguientes métodos de descriptores de acceso:
• getStudentId()
• getName()
• getSSN()
• getGPA()
−Agregar los siguientes métodos de descriptores de mutación:
• setStudentId()
• setName()
• setSSN()
• setGPA()
• Agregar un método toString() a la clase Estudiante que
nos permitirá ver los datos del Estudiante como egreso

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 46

46
Mejora de la clase de objeto del Estudiante
• Agregar el método getStudentId() y el método
setStudentId() como se indica a continuación
• El nombre del objeto de la clase (este) se usa para
distinguir entre la variable de la clase studentId y el
parámetro studentId que se aprueba como argumento

public int getStudentId(){


return studentId;
}//end method getStudentId
public void setStudentId(int studentId){
this.studentId = studentId;
}//end method setStudentId

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 47

La palabra "this" es necesaria cuando el parámetro tiene el mismo nombre que el campo. "this"
identifica el campo.

47
Métodos adicionales para la clase del objeto
Estudiante
• Ahora, utilizando el ejemplo de la diapositiva anterior,
agregue los siguientes métodos a la clase del objeto
• Estudiante:
−getName()
−getSSN()
−getGPA()
−setName()
−setSSN()
−setGPA()

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 48

48
Agregar el método toString() a la clase del objeto
Estudiante
• Ahora agregue el método toString() a la clase del
objeto Estudiante
• Observe que, puede desarrollar cualquier objeto del
String para mostrar información sobre cada estudiante:
public String toString()
{
String s1 = "";
s1 = "Student Id: " + getStudentId()
+ "Student Name: " + getName()
+ "Student SSN: " + getSSN()
+ "Student GPA: " + getGPA();
return s1;
}//end method toString

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 49

El signo "+" es el operador de concatenación de cadenas. Une dos objetos String.

49
Creación del método principal de la clase del
controlador StudentTester
• Ahora cree un método principal de la clase del
controlador StudentTester, de la siguiente manera:
public class StudentTester
{
public static void main(String args[]
{
Student s1 = new Student(123, "Mary Smith",
"999-99-9999", 3.4);
System.out.println(s1);
Student s2 = new Student();
s2.setStudentId(124);
s2.setStudentName("John Jacoby");
s2.setSSN("123-45-6789");
s2.setGPA(4.0);
System.out.println(s2);
Student s3 = new Student();
System.out.println(s3);
}//end method main
}//end class StudentTester

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 50

50
Bloque de códigos
• Un bloque de códigos se define al abrir y cerrar
"corchetes” { }
public class SayHello
{ // Bloque de códigos de clases

public static void main(String args[]


{ // Bloque de códigos de métodos
System.out.println("Hello Lisa");
} // Bloque de códigos de métodos
} // Bloque de códigos de clases

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 51

51
Bloque de códigos
• Al examinar los bloques de códigos, tenga en cuenta lo
siguiente:
− Todas las declaraciones de clases se delimitan en un bloque de
códigos
− Las declaraciones de los métodos, incluso la del método principal,
se delimitan en bloques de códigos
− Los campos y métodos de Java poseen un alcance de bloque
(o clase)
public class SayHello
{ // Bloque de códigos de clases

public static void main(String args[]


{ // Bloque de códigos de métodos
System.out.println("Hello Lisa");
} // Bloque de códigos de métodos
} // Bloque de códigos de clases

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 52

52
Formato del bloque de códigos
• Los bloques de códigos comienzan con
{ y finalizan con }
• Cada vez que comienza un bloque de códigos debe
finalizarlo
• Por ejemplo:
−Todo "{" DEBE tener su correspondiente "}"
• Los bloques de códigos se encuentran en:
−Clases
−Métodos
−Condicionales (sentencias "si", sentencias "switch")
−ciclos

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 53

53
Terminología
• Los términos clave usados en esta lección son los
siguientes:
−Modificadores de acceso
−Bloques de códigos
−Constantes
−Constructores
−Clase de controlador

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 54

54
Terminología
• Los términos clave usados en esta lección son los
siguientes:
−Sentencias de importación
−API de Java
−Comentarios de Java
−Palabas clave de Java
−Minúsculas estilo CamelCase
−Métodos

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 55

55
Terminología
• Los términos clave usados en esta lección son los
siguientes:
−Clase del objeto
−Paquetes
−Parámetros
−Clase creada por programador
−Mayúsculas estilo CamelCase
−Variables

JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 56

56
Resumen
• En esta lección, habrá aprendido a:
−Describir el formato general de un programa en Java
−Describir la diferencia entre una clase de objeto y una clase
de controlador
−Acceder a un mínimo de dos clases de API de Java
−Explicar y dar ejemplos de las palabras clave de Java
−Crear una clase de objeto
−Crear una clase de controlador

JF 4-2
JF 4-2
Clases de objeto y piloto Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. 57
Clases de objeto y piloto

57
58

También podría gustarte