Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Objeto: Los objetos son los elementos creados a partir de las clases antes mencionadas. En
algunos lenguajes de programación se suele usar el término instancia.
Una Clase se puede utilizar muchas veces para crear muchos objetos de la misma Clase.
Por ejemplo, podemos tener varios objetos del tipo Cliente, uno por cada cliente que tengamos en
nuestra cartera de clientes, pero la clase sólo será una. Si creamos una clase llamada tiempo, esta se
puede utilizar para crear muchos objetos de tipo tiempo: hora levantarse, hora desayuno, hora
comida, hora cena, hora dormir, etc.
Dicho de otra forma, podemos tener varias instancias de una Clase. Una instancia es un objeto
creado a partir de una Clase. Por lo que podemos tener varias instancias u objetos creados a partir
de una Clase.
Una Clase contiene un conjunto de objetos con características similares. Antes de poder utilizar
un objeto se debe definir la Clase a la que pertenece, esa definición incluye:
Mensajes
Los mensajes son llamados o invocación a los métodos de un objeto en particular.
Un mensaje es una solicitud de objeto para invocar uno de sus métodos. Un mensaje por lo tanto
contiene: el nombre del método y los argumentos del método.
Por consecuencia, la invocación de un método es solamente una reacción causada por el hecho de
recibir un mensaje. Esto solamente es posible si el método es realmente conocido por el objeto.
Características fundamentales de la POO
(Abstracción, Encapsulamiento, Herencia y Polimorfismo)
Abstracción
La abstracción: Consiste en la generalización conceptual de un determinado conjunto de objetos y
de sus atributos y propiedades. ¿Qué se consigue con la abstracción? básicamente pasar del plano
material (cosas que se tocan) al plano mental (cosas que se piensan).
Una abstracción denota2 las características esenciales de un objeto (datos y operaciones), que lo
distingue de otras clases de objetos. La abstracción es clave en el proceso de análisis y diseño
orientado a objetos, ya que mediante ella podemos llegar a armar un conjunto de clases que
permitan modelar la realidad o el problema que se quiere abordar.
Encapsulamiento
Es la propiedad que permite ocultar al mundo exterior la representación interna del objeto, es decir
ocultar tanto nuestros atributos como nuestros métodos. Esto quiere decir que el objeto puede ser
utilizado, pero los datos esenciales del mismo no son conocidos fuera de él. La idea central del
encapsulamiento es esconder los detalles y mostrar lo relevante.
El encapsulamiento permite ocultar parte de nuestro código y exponer solo lo que deseamos.
El encapsulamiento en un sistema orientado a objeto se representa en cada clase u objeto,
definiendo sus atributos y métodos.
Herencia
La herencia consiste en la creación de clases a partir de otras ya existentes. Tenemos lo que
llamamos una clase padre (superclase) y clases hijas (clases derivadas), que heredan los métodos y
atributos de su clase padre.
Con la herencia todas las clases están clasificadas en una jerarquía estricta. La clase superior en la
jerarquía, llamada superclase, o clase padre hereda sus atributos y métodos a las clases inferiores
llamadas clase derivada o clase hija.
CLASS CUENTA
En la POO tiene mucha importancia este concepto, la herencia es el mecanismo que permite crear
clases basadas en otras existentes. Se dice que esas clases descienden de las primeras. Así, por
ejemplo, se podría crear una clase llamada vehículo cuyos métodos serían mover, parar, acelerar y
frenar. Y después se podría crear una clase coche basada en la anterior que tendría esos mismos
métodos (les heredaría) y además añadiría algunos propios.
Polimorfismo
Es una propiedad que permite que un método tenga múltiples implementaciones, que se
seleccionan en base al tipo objeto indicado al solicitar la ejecución del método.
Polimorfismo es la cualidad que tienen los objetos para responder de distinto modo a un mismo
mensaje. El polimorfismo nos permite escribir programas que procesen objetos de clases que
formen parte de una misma jerarquía de clases, como si todos fueran objetos de la clase base.
El polimorfismo permite que las clases hijas implementen un método de la clase padre de forma
distinta.
2
poner de manifiesto un indicio de algo
B. Uso del Lenguaje Unificado de Modelado (UML) para el diseño de programas
orientados a objetos
Representación de una Clase
UML (Lenguaje Unificado de Modelado). Es un lenguaje que unifica las mejores prácticas de ingeniería que
existen actualmente en la industria para el modelado de sistemas. Se utiliza para especificar, visualizar,
construir y documentar sistemas. Está basado en el paradigma orientado a objetos.
Para representar una Clase se utilizan los diagramas de Clase de la notación que provee el Lenguaje
Unificado de Modelado (UML).
Un diagrama de Clase es una representación gráfica de una Clase, el cual ayuda al programador a visualizar
cuales son las propiedades y métodos que contendrá una Clase o conjunto de Clases en particular.
Las Clases se denotan3 como rectángulos divididos en tres partes. La primera contiene el nombre de la
Clase, la segunda contiene los atributos y la tercera los métodos.
Los especificadores de acceso a datos y operaciones determinan el alcance de la visibilidad del elemento
al que se refieren. Por ejemplo, un atributo o método, puede que sea visible sólo para la clase que lo utiliza
(prívate), para éstas y las heredadas (protected), para todas las clases del mismo paquete o para cualquier
clase del tipo que sea público (public). Se representan con los símbolos +, #, –, respectivamente, al lado
del atributo o método (+ público, # protegido, - privado).
Retomando el ejemplo anterior de la clase Teléfono, el diagrama de Clase sería el siguiente:
Convención de nombres
En Programación, una convención de
nombres es un conjunto de reglas para la
elección de la secuencia de caracteres que se
utiliza para identificadores que denoten Clases,
métodos y otras entidades en el código fuente y
la documentación.
Los nombres de las clases son sustantivos y
siempre comienzan con una letra mayúscula.
En el ejemplo, nuestra clase se llama Teléfono,
si la clase se denominara teléfono celular se
escribiría de la siguiente manera:
TeléfonoCelular, todo junto y cada palabra
inicia con mayúscula. Esto se conoce también
como nomenclatura4 camelCase.
Para las propiedades o atributos, los nombres
comienzan con una letra minúscula, y si estuviera formado por dos palabras se escribiría junto las dos
palabras, la primera palabra en minúscula y la segunda palabra comienza con una letra mayúscula, como el
atributo sistemaOperativo de la clase Teléfono
Para los métodos se utiliza la misma nomenclatura camelCase, igual que las propiedades, pero finalizan con
paréntesis. Por ejemplo, si el método ejecuta de la Clase Teléfono se denominara ejecuta videos, se escribiría
de la siguiente manera ejecutaVideos().
3
Dar a entender con indicios y señales una cosa para que se conozca.
4
En lingüística, el conjunto o sistema de nombres o términos empleados en alguna disciplina u oficio, o por alguna comunidad.
C. Software para el desarrollo y modelado de aplicaciones orientado a objetos
Son programas orientada a objetos aquellos lenguajes de programación (software) que permiten la utilización
de objetos dentro del diseño del programa, donde el usuario puede escribir a cada objeto código de programa.
Ejemplos de estos programas son: Python, Java, Kotlin, JavaScript, Ruby, PHP, Objective.C, Swift, Matlab,
PowerBuilder, C#, C++, F#, Visual C, Visual Basic.Net, etc.
¿Qué es Java?
Java, es un lenguaje de programación de alto nivel de propósito general. Es uno de los lenguajes
más populares, simple y seguro de utilizar, es multiplataforma y multiparadigma.
Java fue creado por James Gosling cuando trabaja en Sun Microsystem. Fue publicado en 1995.
¿Qué es JRE?
Es el Entorno de Ejecución de Java. Contiene la JVM y otras herramientas que permiten la ejecución de las
aplicaciones Java. JRE te permite jugar juegos en línea, chatear, realizar cálculos, ver imágenes en 3D y
disfrutar de muchas otras cosas más. JRE no posee compiladores, ni herramientas para desarrollar las
aplicaciones Java, solo posee las herramientas para ejecutarlas.
¿Qué es JMV - Java Virtual Machine?
Es la Máquina Virtual de Java que ejecuta las aplicaciones creadas en Java, garantizando así la portabilidad
de las mismas. Esta define una computadora lógica que ejecutará las instrucciones Bytecode generadas
dentro de un archivo .class
Librerías
En Java y en varios lenguajes de programación, existe el concepto de librerías. Una librería en Java se puede
entender como un conjunto de clases, que poseen una serie de métodos y atributos. Lo realmente interesante
de estas librerías para Java es que facilitan muchas operaciones. De una forma más completa, las librerías en
Java nos permiten reutilizar código, es decir, que podemos hacer uso de los métodos, clases y atributos que
componen la librería, evitando así tener que implementar nosotros mismos esas funcionalidades a través de
código.
Diferencias entre JRE y JDK
Para poder simplemente ejecutar un programa en JAVA, necesitamos tener como mínimo Java
Runtime Environment (JRE) instalado. El JRE, solo nos permitirá ejecutar programas una vez
compilados.
En el caso de querer desarrollar programas con Java, necesitaremos el JDK
Los IDE ofrecen un marco de trabajo amigable para la mayoría de los lenguajes de programación, tales
como: Python, Java, C#, Delphi, Visual Studio, C++, etc.
¿Qué es NetBeans?
Es un IDE que permite editar código del lenguaje Java. NetBeans, es un proyecto de
código abierto cuyo patrocinador principal es Sun Microsystem. Comenzó como un
proyecto estudiantil en la República Checa en 1996 en la Universidad Carolina en Praga.
Jarda Tulach diseñó la arquitectura básica de la IDE y propuso la idea de llamarlo
NetBeans.
NetBeans permite escribir, compilar, depurar y ejecutar aplicaciones Java. También permite
implementar aplicaciones en otros lenguajes como PHP o C++. En la actualidad, NetBeans soporta
todos los tipos de aplicaciones Java como J2SE, EJB y aplicaciones móviles.
¿Qué es un constructor?
Un constructor es un método especial que se ejecuta cuando creamos un objeto. Su función es
inicializar el objeto y sirve para asegurarnos que los objetos siempre contengan valores válidos.
Cuando se crea un objeto en Java se realizan las siguientes operaciones de forma automática:
1. Se asigna memoria para el objeto.
2. Se inicializan los atributos de ese objeto con los valores predeterminados por el sistema.
3. Se llama al constructor de la clase que puede ser uno entre varios.
El constructor de una clase tiene las siguientes características:
Tiene el mismo nombre que la clase a la que pertenece.
No puede devolver ningún valor (incluyendo void).
Debe declararse público para que pueda ser invocado desde cualquier parte donde se desee crear
un objeto de su clase.
En una clase puede haber varios constructores con el mismo nombre y distinto número de
argumentos (se puede sobrecargar)
No se hereda.
Método constructor por defecto
Si para una clase no se define ningún método constructor, automáticamente se crea uno por defecto.
El constructor por defecto es un constructor sin parámetros que no hace nada. Los atributos del objeto
son iniciados con los valores predeterminados por el sistema.
¿Qué son los parámetros y los argumentos?
Un parámetro es una variable que se utiliza para recibir un valor que se envía desde otro módulo.
Un argumento es el valor que se envía desde el módulo que hace el llamado.
El parámetro aparece en la definición del método, en tanto que el argumento en el llamado al método.
En una forma más simple, generalmente un parámetro es una variable y un argumento un valor.
Formas de pasar parámetros.
Los lenguajes de programación de alto nivel pueden pasar argumentos por valor o por referencia.
Paso por valor.
El paso de argumentos por valor consiste en copiar el contenido del argumento en el parámetro. De esta
forma, el valor enviado estará en el parámetro, en tanto que el argumento conserva el valor original.
Operador new
Es el operador que permite crear un objeto nuevo de una clase determinada.
Entrada y salida de datos con JOptionPane
JOptionPane es una clase que nos provee un conjunto de ventanas de dialogo que es ideal, para mostrar
mensajes al usuario. Ya sean informativos, advertencias, errores, confirmaciones… O incluso tenemos
la posibilidad de solicitar la introducción de un dato.
Esta clase la encontramos dentro del paquete javax.swing.JOptionPane; para que funcione, y que no
nos muestre un error el IDE, debemos importar esta librería.
La sentencia return se emplea para salir de la secuencia de ejecución de las sentencias de un método y,
opcionalmente, devolver un valor. Tras la salida del método se vuelve a la secuencia de ejecución del
programa al lugar de llamada de dicho método.
Return, nos ayudará a terminar de forma abrupta la ejecución de ese método y evitar que siga
ejecutando código y consumiendo recursos. Al terminar un método con return, se devuelve el control
de ejecución del programa al hilo o método que haya realizado la llamada.
Sobrecarga de métodos
Dentro de una misma clase pueden definirse dos o más métodos con el mismo nombre, la única regla
es que deben recibir parámetros diferentes. Cuando esto ocurre, se dice que los métodos están
sobrecargados.
https://www.youtube.com/watch?v=v0DVEzymtYg
https://www.youtube.com/watch?v=Z0yLerU0g-Q
https://www.youtube.com/watch?v=v0DVEzymtYg
http://javadesde0.com/jre-jdkque-version-java-instalada-instalo-java-jre/
https://es.stackoverflow.com/questions/104392/cu%C3%A1l-es-la-diferencia-entre-jdk-y-
jre#:~:text=JRE%20es%20el%20Java%20Runtime,posee%20las%20herramientas%20para
%20ejecutarlas.
https://www.ecured.cu/IDE_de_Programaci%C3%B3n
http://javadesde0.com/tag/que-es-joptionpane/#:~:text=JOptionPane%20es%20una%20clase
%20que,encontramos%20dentro%20del%20paquete%20javax.