Está en la página 1de 28

CLASE STRING

Mg. Ing. Manuel Lagos.


CLASE STRING
 Un String en Java representa una cadena de caracteres no
modificable.
 Todos los literales de la forma "cualquier texto", es decir,
literales entre comillas dobles, que aparecen en un
programa java se implementan como objetos de la clase
String.

POO - Mg. Ing. Manuel Lagos


CREACIÓN DE UN STRING
 Utilizando una cadena de caracteres entre comillas:
 String s1 = "abcdef";

 Utilizando el operador de concatenación + con dos o


más objetos String:
 String s2 = s1 + "ghij"; //s2 contiene "abcdefghij"
 String s3 = s1 + s2 + "klm"; //s3 contiene "abcdefabcdefghijklm"

POO - Mg. Ing. Manuel Lagos


CONSTRUCTORES DE LA CLASE
STRING

POO - Mg. Ing. Manuel Lagos


METODOS DE LA CLASE STRING

POO - Mg. Ing. Manuel Lagos


METODOS DE LA CLASE STRING

http://docs.oracle.com/javase/7/docs/api/index.html?java/lang/Stri
ng.html
POO - Mg. Ing. Manuel Lagos
LOS OBJETOS STRING NO SON
MODIFICABLES

 Los métodos que actúan sobre un String con la intención


de modificarlo lo que hacen es crear un nuevo String a
partir del original y devolverlo modificado.

 Por ejemplo: Una operación como convertir a mayúsculas


o minúsculas un String no lo modificará sino que creará y
devolverá un nuevo String con el resultado de la
operación.

POO - Mg. Ing. Manuel Lagos


LOS OBJETOS STRING NO SON
MODIFICABLES

El recolector de basura es el encargado de eliminar de


forma automática los objetos a los que ya no hace referencia
ninguna variable.
POO - Mg. Ing. Manuel Lagos
EL OPERADOR DE CONCATENACIÓN
“+”

 La clase proporciona el operador + (concatenación) para


unir dos o más String.

 El resultado de aplicar este operador es un nuevo String


concatenación de los otros.

POO - Mg. Ing. Manuel Lagos


EL OPERADOR DE CONCATENACIÓN
“+”

POO - Mg. Ing. Manuel Lagos


Ejercicio

 Escriba una clase que tenga las siguientes operaciones


para trabajar con un objeto de la clase String:

 Invertir un String.
 Contar cuantas veces se repite un carácter en un String.
 Contar el número de espacios en blanco que tiene un String.
 Contar cuantas vocales tiene un String.
 Contar cuántas consonantes tiene un String

 Pruebe la clase creada anteriormente

POO - Mg. Ing. Manuel Lagos


HERENCIA
Encapsulamiento vs Herencia
 Mientras que el encapsulamiento nos permite escribir
objetos autónomos bien definidos, posibilitando que un
objeto utilice a otro objeto mediante mensajes. El uso es
sólo una de las formas en que los objetos se pueden
relacionar en la OO. Otra forma de interrelación entre
objetos viene a ser la Herencia.

POO - Mg. Ing. Manuel Lagos


Herencia
 El mecanismo conocido con el nombre de herencia
permite reutilizar clases: Se crea una nueva clase
que extiende la funcionalidad de una clase existente
sin tener que reescribir el código asociado a esta última.
 La herencia permite tomar una clase existente como base
para definir una nueva clase.
 A través de la herencia, la clase nueva hereda todos los
atributos y comportamientos presentes en la clase
existente.

POO - Mg. Ing. Manuel Lagos


Herencia
 La nueva clase, a la que se denomina subclase, puede
poseer atributos y métodos que no existan en la clase
original.
 Los objetos de la nueva clase heredan los atributos y los
métodos de la clase original, que se denomina
superclase.

POO - Mg. Ing. Manuel Lagos


Herencia
 Trabajador es una clase genérica que sirve para
almacenar datos como el nombre, la dirección, el
número de teléfono o el número de la seguridad
social de un trabajador.
 Empleado es una clase especializada para
representar los empleados que tienen una nómina
mensual (encapsula datos como su salario mensual
o las retenciones por descuentos).
 Consultor es una clase especializada para
representar a aquellos trabajadores que cobran por
horas (por ejemplo, registra el número de horas
que ha trabajado un consultor y su tarifa horaria).

POO - Mg. Ing. Manuel Lagos


Herencia
 Las clases Empleado y
Consultor, además de
los atributos y de las
operaciones que
definen, heredan de
Trabajador todos sus
atributos y
operaciones.

POO - Mg. Ing. Manuel Lagos


Herencia
 Un empleado concreto tendrá, además de sus atributos y
operaciones como Empleado, todos los atributos
correspondientes a la superclase Trabajador.

POO - Mg. Ing. Manuel Lagos


Clase
Trabajador:

POO - Mg. Ing. Manuel Lagos


Clase
Empleado:

POO - Mg. Ing. Manuel Lagos


Herencia
 Con la palabra reservada extends indicamos que
Empleado es una subclase de Trabajador.
 Con la palabra reservada super accedemos a miembros
de la superclase desde la subclase.
 Generalmente, en un constructor, lo primero que nos
encontramos es una llamada al constructor de la clase
padre con super(...). Si no ponemos nada, se llama al
constructor por defecto de la superclase antes de
ejecutar el constructor de la subclase.

POO - Mg. Ing. Manuel Lagos


Clase
Consultor:

POO - Mg. Ing. Manuel Lagos


Herencia
 La clase Consultor también define un método llamado
calcularPaga (), si bien en este caso el cálculo se hace de
una forma diferente por tratarse de un trabajador de un
tipo distinto.
 Tanto la clase Empleado como la clase Consultor
redefinen el método toString () que convierte un objeto
en una cadena de caracteres.
 De hecho, Trabajador también redefine este método, que
se hereda de la clase Object, la clase base de la que
heredan todas las clases en Java.

POO - Mg. Ing. Manuel Lagos


Redefinición de métodos
 Como hemos visto en el ejemplo con el método toString
(), cada subclase hereda las operaciones de su superclase
pero tiene la posibilidad de modificar localmente el
comportamiento de dichas operaciones (redefiniendo
métodos).

POO - Mg. Ing. Manuel Lagos


Probando las clases:
 Defina una clase Principal y agregue el siguiente código adecuadamente
para probar las clases creadas:

POO - Mg. Ing. Manuel Lagos


Ejercicios

POO - Mg. Ing. Manuel Lagos


Ejercicio:
 Cree un proyecto, defina las clases que crea conveniente
con sus respectivos atributos, constructores, get’s, set’s,
para los diagramas UML, mostrados a continuación.
 Cree una clase principal para probar las clases creadas.

POO - Mg. Ing. Manuel Lagos


Ejercicio 1:

POO - Mg. Ing. Manuel Lagos

También podría gustarte