Skip to main content

Resumen capitulo 9 y 10

Capitulo 9

Objetos y Clases
Definición de clases para objetos:  
  • El estado de un objeto (también conocido como sus propiedades o atributos) está representado por campos de datos con sus valores actuales.
  • El comportamiento de un objeto (también conocido como sus acciones) se define por métodos. Al invocar un método en un objeto es pedirle al objeto que realice una acción.
Construir objetos usando constructores: Se invoca un constructor para crear un objeto utilizando el nuevo operador.

Los constructores son un tipo especial de método.
Tienen tres peculiaridades:

  • Un constructor debe tener el mismo nombre que la clase misma.
  • Los constructores no tienen un tipo de retorno, ni siquiera son nulos.
  • Los constructores se invocan utilizando el nuevo operador cuando se crea un objeto.
  • Los constructores juegan el papel de inicializar objetos.
  • El constructor tiene exactamente el mismo nombre que su clase definitoria.
Accesar objetos con variables referenciales: Se puede acceder a los datos y métodos de un objeto a través del operador punto (.) A través de variable de referencia del objeto.

Los objetos recién creados se asignan en la memoria. Se puede acceder a ellos por variables de referencia.

Diferencia entre una variable de tipo primitivo y una de tipo referencia: Para una variable de tipo primitivo, el valor es del tipo primitivo. Para una variable de un tipo de referencia, el valor es una referencia a donde se encuentra un objeto.

Variables estáticas, constantes y métodos: Una variable estática es compartida por todos los objetos de la clase. Un método estático no puede acceder a los miembros de instancia de la clase.
Si desea que todas las instancias de una clase compartan datos, use variables estáticas, también conocidas como variables de clase. Las variables estáticas almacenan valores para las variables en una ubicación de memoria común. Debido a esta ubicación común, si un objeto cambia el valor de una variable estática, todos los objetos de la misma clase se ven afectados. Java admite métodos estáticos, así como variables estáticas. Se pueden invocar métodos estáticos sin crear una instancia de la clase.

Modificadores de visibilidad: Los modificadores de visibilidad se pueden usar para especificar la visibilidad de una clase y sus miembros.
Puede usar el modificador de visibilidad pública para clases, métodos y campos de datos para indicar que se puede acceder a ellos desde cualquier otra clase.

Encapsulacion de campos de datos: La privacidad de los campos de datos protege los datos y hace que la clase sea fácil de mantener.

Pasar objetos a métodos: Pasar un objeto a un método es pasar la referencia del objeto. Puede pasar objetos a métodos. Al igual que pasar una matriz, pasar un objeto es en realidad pasar la referencia del objeto


Arreglos de objetos: Una matriz puede contener objetos así como valores de tipo primitivos. Matrices unidimensionales, describe cómo crear matrices de elementos de tipo primitivos. También puedes crear matrices de objetos.


Objetos inmutables y clases: Puede definir clases inmutables para crear objetos inmutables. El contenido de los objetos inmutables no se puede cambiar. Normalmente, crea un objeto y permite que su contenido se cambie más tarde. Sin embargo, ocasionalmente es deseable crear un objeto cuyo contenido no se pueda cambiar una vez que el objeto ha sido creado. Llamamos a un objeto como objeto inmutable y su clase como inmutable clase.


Para que una clase sea inmutable, debe cumplir los siguientes requisitos:   ■ Todos los campos de datos deben ser privados.   ■ No puede haber ningún método mutador para los campos de datos.   ■ Ningún método de acceso puede devolver una referencia a un campo de datos que sea mutable.


El alcance de las variables: El alcance de la instancia y las variables estáticas es la clase completa, independientemente de dónde se declaren las variables. Las variables locales se declaran y usado dentro de un método localmente. Esta sección discute las reglas de alcance de todas las variables en el contexto de una clase. La instancia y las variables estáticas en una clase se denominan variables de la clase o campos de datos. Una variable definida dentro de un método se denomina variable local. El alcance de las variables de una clase es toda la clase, independientemente de dónde se declaren las variables.


La referencia THIS: La palabra clave this se refiere al objeto en sí. También se puede usar dentro de un constructor para invocar a otro constructor de la misma clase. La palabra clave this es el nombre de una referencia que un objeto puede usar para referirse a sí mismo. Puede usar esta palabra clave para hacer referencia a los miembros de la instancia del objeto.



Resultado de imagen para java


Capitulo 10:


Abstracción y encapsulamiento: La abstracción de clase es la separación de la implementación de clase del uso de una clase. Los detalles de la implementación están encapsulados y ocultos para el usuario. Esto se conoce como encapsulación de clase.


Java proporciona muchos niveles de abstracción, y la abstracción de clase separa la implementación de clase de cómo se usa la clase. El creador de una clase describe las funciones de la clase y le permite al usuario saber cómo se puede usar la clase.

Pensando en objetos: El paradigma procesal se centra en el diseño de métodos. El paradigma orientado a objetos combina datos y métodos juntos en objetos. El diseño de software utilizando el paradigma orientado a objetos se enfoca en objetos y operaciones en objetos.

Se introdujo técnicas de programación fundamentales para la resolución de problemas mediante bucles, métodos y matrices. Conocer estas técnicas sienta una base sólida para la programación orientada a objetos. Las clases proporcionan más flexibilidad y modularidad para construir software reutilizable.

Relación de clases: Para diseñar clases, debe explorar las relaciones entre clases. Las relaciones comunes entre clases son asociación, agregación, composición y herencia.

Asociación: La asociación es una relación binaria general que describe una actividad entre dos clases.
Por ejemplo, un estudiante que toma un curso es una asociación entre la clase del estudiante y la clase del curso, y un miembro de la facultad que enseña un curso es una asociación entre la clase de la facultad y la clase del curso.

Agregación y composición:  La agregación es una forma especial de asociación que representa una relación de propiedad entre dos objetos. Los modelos de agregación tienen una relación. El objeto propietario se llama agregación objeto , y su clase se llama una clase de agregación. El objeto sujeto se llama un objeto agregado, y su clase se llama una clase agregada. Una relación de agregación generalmente se representa como un campo de datos en la clase de agregación.

Procesar valores de tipo primitivo como objetos: Un valor de tipo primitivo no es un objeto, pero se puede ajustar en un objeto utilizando una clase de contenedor en la API de Java.
Debido a consideraciones de rendimiento, los valores de tipo de datos primitivos no son objetos en Java.
Debido a la sobrecarga de procesamiento de objetos, el rendimiento del lenguaje se vería afectado negativamente si los valores de tipo de datos primitivos fueran tratados como objetos. Sin embargo, muchos métodos Java requieren el uso de objetos como argumentos. Java ofrece una forma conveniente de incorporar una envoltura, un tipo de datos primitivo en un objeto (por ejemplo, envolviendo int en la clase Integer, envolviendo double en la clase Double y envolviendo char en la clase Character). Al usar una clase contenedora, puede procesar valores de tipo de datos primitivos como objetos. Java proporciona clases de contenedor booleanos, de caracteres, dobles, flotantes, de bytes, cortos, enteros y largos en el paquete java.lang para tipos de datos primitivos. La clase booleana envuelve un valor booleano verdadero o falso. Esta sección usa Integer y Double como ejemplos para presentar las clases de contenedor numérico.

Conversión automática entre clases de tipo primitiva y de tipo envoltura: Un valor de tipo primitivo puede convertirse automáticamente en un objeto utilizando un contenedor
clase y viceversa, según el contexto.
La conversión de un valor primitivo en un objeto contenedor se llama boxing. La conversión inversa se llama unboxing. Java permite que los tipos primitivos y las clases de contenedor se conviertan automáticamente. El compilador automáticamente recuadrará un valor primitivo que aparece en un contexto que requiere un objeto, y desempaquetará un objeto que aparece en un contexto que requiera un valor primitivo. Esto se llama autoboxing y autounboxing.

Las clases del gran entero y el gran decimal: Las clases BigInteger y BigDecimal se pueden usar para representar enteros o números decimales de cualquier tamaño y precisión.
Si necesita calcular con números enteros muy grandes o valores de punto flotante de alta precisión, puede usar las clases BigInteger y BigDecimal en el paquete java.math.

La clase string: Un objeto String es inmutable: su contenido no se puede cambiar una vez que se crea la cadena. Las cadenas son objetos. Puede invocar el método charAt (index) para obtener un carácter en el índice especificado de una cadena, el método length () para devolver el tamaño de una cadena, el método de subcadena para devolver una subcadena en una cadena y el indexOf y lastIndexOf métodos para devolver el primer o el último índice de un carácter coincidente o una subcadena.
La clase String tiene 13 constructores y más de 40 métodos para manipular cadenas.
No solo es muy útil en la programación, sino que también es un buen ejemplo para aprender clases y objetos

Construcción de un string: Puede crear un objeto de cadena a partir de un literal de cadena o de una matriz de caracteres. Para crear una cadena a partir de un literal de cadena, use la sintaxis:
String newString = new String(stringLiteral);

Strings Inmutables y strings internados: Un objeto string es inmutable; su contenido no se puede cambiar. Debido a que los strings son inmutables y ubicuas en la programación, la JVM usa una instancia única para strings con la misma secuencia de caracteres para mejorar la eficiencia y ahorrar memoria. Tal instancia se llama una string interno.

Reemplazar un string: La clase String proporciona los métodos para reemplazar y dividir cadenas.
Una vez que se crea un string, su contenido no se puede cambiar. Los métodos replaceFirst y replaceAll devuelve una nueva cadena derivada de la cadena original (¡sin cambiar la cadena original!). Se proporcionan varias versiones de los métodos de reemplazo para reemplazar un carácter o una subcadena en la cadena con un nuevo carácter o una nueva subcadena.

Emparejamiento, reemplazo y división por patrones: Una expresión regular (expresión abreviada) es una cadena que describe un patrón para hacer coincidir un conjunto de cadenas. Puede hacer coincidir, reemplazar o dividir una cadena especificando un patrón. Esta es una característica extremadamente útil y poderosa.

Comencemos con el método de coincidencias en la clase String. A primera vista, el método de coincidencias es muy similar al método de igualdad. Por ejemplo, las siguientes dos afirmaciones se evalúan como verdaderas.
"Java".matches("Java"); "Java".equals("Java");

Conversión entre arreglos y strings: Los strings no son arreglos, pero una cadena se puede convertir en una matriz y viceversa. Para convertir una cadena en una matriz de caracteres, use el método toCharArray. Por ejemplo, la siguiente declaración convierte la cadena Java en una matriz.
char[] chars = "Java".toCharArray();

Convertir caracteres y valores numero a strings: Recuerde que puede usar Double.parseDouble (str) o Integer.parseInt (str) para convertir una cadena en un valor doble o un valor int y puede convertir un carácter o un número en una cadena utilizando el operador de concatenación de cadenas. Otra forma de convertir un número en una cadena es usar el método valueOf estático sobrecargado. Este método también se puede usar para convertir un carácter o un arreglo de caracteres en una cadena.

Formatear los strings: La clase String contiene el método de formato estático para devolver una cadena formateada. La sintaxis para invocar este método es:
String.format(format, item1, item2, ..., itemk)

Las clases de stringbuilder y stringbuffer: Las clases StringBuilder y StringBuffer son similares a la clase String, excepto que la clase String es inmutable. En general, las clases StringBuilder y StringBuffer se pueden usar siempre que una cadena
es usado StringBuilder y StringBuffer son más flexibles que String. Puede agregar, insertar o agregar nuevos contenidos a los objetos StringBuilder y StringBuffer, mientras que el valor de un objeto String se fija una vez que se crea la cadena.
La clase StringBuilder es similar a StringBuffer, excepto que los métodos para modificar el búfer en StringBuffer están sincronizados, lo que significa que solo una tarea puede ejecutar los métodos. Utilice StringBuffer si varias tareas pueden acceder simultáneamente a la clase, ya que en este caso se necesita sincronización para evitar daños a los stringsbuffer.



Resultado de imagen para java







Bibliografia


Y. Daniel Liang. (2011). INTRODUCTION TO JAVA PROGRAMMING COMPREHENSIVE VERSION. USA: Armstrong Atlantic State University.







































Comments

Popular posts from this blog

Recorridos del arbol binario en c

Recorridos de arboles binarios:  Los recorridos en arboles binarios se encargar de imprimir cada nodo del árbol, desde su raíz o nodo padre, hasta todas su hojas o nodos hijos. Existen 3 tipos de recorridos: Preorden: Realiza estos pasos recursivamente: Imprime la raíz. Atraviesa e imprime los nodos del sub-árbol izquierdo. Atraviesa e imprime los nodos del sub-árbol derecho.     Inorden: Realiza estos paso recursivamente.  Atraviesa e imprime los nodos del sub-árbol izquierdo.  Imprime la raíz.  Atraviesa e imprime los nodos del sub-árbol derecho.   Postorden: Realiza estos pasos recursivamente:   Atraviesa e imprime los nodos del sub-árbol izquierdo.  Atraviesa e imprime los nodos del sub-árbol derecho.   Imprime la raíz.  Bibliografia Ruiz E. (2013). ejemplos recorridos arboles binarios. 18 de setiembre del 2019, de ingenieria de software y negocios inteligentes Sitio web...

Ciclos - Capitulo 5

Introducción Se puede usar un bucle para indicarle a un programa que ejecute sentencias repetidamente. Suponga que necesita mostrar una cadena (por ejemplo, ¡Bienvenido a Java!) Cientos de veces. Sería tedioso tener que escribir la siguiente declaración cien veces:  Entonces, ¿cómo resuelves este problema? Java proporciona una construcción poderosa llamada bucle que controla cuántas veces se realiza una operación o una secuencia de operaciones en sucesión. Usando una declaración de bucle, simplemente le dice a la computadora que muestre una cadena cien veces sin tener que codificar la declaración de impresión cien veces, de la siguiente manera: Ciclo While Un ciclo while ejecuta declaraciones repetidamente mientras la condición es verdadera. La figura 5.1a muestra el diagrama de flujo del ciclo while. La parte del ciclo que contiene las declaraciones que se repetirán se llama cuerpo del ciclo. Una ejecución única de un cuerpo de bucle se conoce como una i...