SOLUCIÓN DE INTRODUCCIÓN A POO
1.
Objeto: La
programación orientada a objetos consiste en ordenar datos en conjuntos
modulares de elementos de información del mundo real (denominado un dominio).
Estos elementos de datos se llaman objetos. Estos datos se agrupan de acuerdo a
las características principales del mundo real de estos elementos (tamaño,
color, etc.).
Herencia: Es
una propiedad que permite que los objetos sean creados a partir de otros ya
existentes, obteniendo características (métodos y atributos) similares a los ya
existentes.
Ej:
Polimorfismo: El polimorfismo es una
relajación del sistema de tipos, de tal manera que una referencia a una clase
(atributo, parámetro o declaración local o elemento de un vector) acepta
direcciones de objetos de dicha clase y de sus clases derivadas (hijas, nietas,
…).
Encapsulación: La encapsulación es un
mecanismo que consiste en organizar datos y métodos de una estructura,
conciliando el modo en que el objeto se implementa, es decir, evitando el
acceso a datos por cualquier otro medio distinto a los especificados. Por lo
tanto, la encapsulación garantiza la integridad de los datos que contiene un
objeto.
Abstracción: Expresa características
esenciales de un objeto, las cuales distinguen al objeto de los demás.
Ej: el objeto sería un pájaro, y sus características, por
ejemplo, serian:
-Pico
-Alas
-Plumas
-Patas
Las funcionalidades asociadas serian: Volar, para, etc.
Interfaz: Una
interfaz es un conjunto de métodos abstractos y de constantes cuya
funcionalidad es la de determinar el funcionamiento de una clase, es decir,
funciona como un molde o como una plantilla. Al ser sus métodos abstractos
estos no tienen funcionalidad alguna, sólo se definen su tipo, argumento y tipo
de retorno.
Ej:
public Interfaz NombreInterfaz{
//Código
}
Clase: Una
clase es la estructura de un objeto, es decir, la definición de todos los
elementos de que está hecho un objeto. Un objeto es, por lo tanto, el
"resultado" de una clase. En realidad, un objeto es una instancia de
una clase, por lo que se pueden intercambiar los términos objeto o instancia (o
incluso evento).
Atributos: un
atributo es una especificación que define una propiedad de un objeto, elemento
o archivo. También puede referirse o establecer el valor específico para una
instancia determinada de los mismos.
Ej:
Del ejemplo anterior está el material, tamaño llanta, entre
otros que puede haber como color, etc.
Métodos: Un método consiste
generalmente de una serie de sentencias para llevar a cabo una acción, un juego
de parámetros de entrada que regularán dicha acción y, posiblemente, un valor
de salida.
Del ejemplo de clase, podemos encontrar los ejemplos de
métodos como cambio, mover, frenar.
Instancia: Una
Instancia es una ocurrencia de la clase y un Objeto es una instancia de una
Clase específica.
Ej:
Supongamos que existe una clase Silla. La silla del comedor
que yo utilizo, es una instancia de esa clase, y, por lo tanto, un objeto de
tipo Silla. La silla que utiliza mi hermana es otra instancia de la misma clase
y, en consecuencia, otro objeto del mismo tipo.
Composición: la
composición es un tipo de relación dependiente en dónde un objeto más complejo
es conformado por objetos más pequeños.
Ej:
En esta situación, la frase “Tiene un”, debe tener sentido:
-El auto tiene llantas.
-La portátil tiene un teclado.
Concurrencia: Es la
propiedad que distingue un objeto activo de uno no activo. Permite que
diferentes objetos actúen al mismo tiempo usando distintos threads de control.
Ej: Distintas tareas del sistema ejecutándose al mismo
tiempo.
Visibilidad: Capacidad
de restringir el acceso a atributos y servicios de un objeto. Particularmente
importante en el diseño e implementación.
Ej:
-Public: Cuando una Clase, Método o Atributo es Visible y
Accesible desde cualquier Clase en cualquier Paquete.
-Private: Cuando un Método o Atributo es Visible y
Accesible solo en su propia clase. Las Clases nunca pueden ser declaradas como
Privadas.
-Protected: Si un Atributo o Método es visible en la Clase,
también en las clases del mismo paquete y en las Subclases de la Clase
Principal en otros paquetes.
2. Qué es el Lenguaje de programación JAVA?: Es un lenguaje de programación de propósito
general, concurrente, orientado a objetos y basado en clases que fue diseñado específicamente
para tener tan pocas dependencias de implementación como fuera posible. Su
intención es permitir que los desarrolladores de aplicaciones escriban el
programa una vez y lo ejecuten en cualquier dispositivo.
3. Qué es JDK?: es un software que
provee herramientas de desarrollo para la creación de programas en Java. Puede
instalarse en una computadora local o en una unidad de red.En la unidad de red
se pueden tener las herramientas distribuidas en varias computadoras y trabajar
como una sola aplicación.
4. Qué es JIT?: la compilación en
tiempo de ejecución (también conocida por sus siglas inglesas, JIT, just-in-time),
también conocida como traducción dinámica, es una técnica para mejorar el
rendimiento de sistemas de programación que compilan a bytecode, consistente en
traducir el bytecode a código máquina nativo en tiempo de ejecución. La
compilación en tiempo de ejecución se construye a partir de dos ideas
anteriores relacionadas con los entornos de ejecución: la compilación a
bytecode y la compilación dinámica.
5. Qué es JVM?: es una máquina
virtual de proceso nativo, es decir, ejecutable en una plataforma específica,
capaz de interpretar y ejecutar instrucciones expresadas en un código binario
especial (el bytecode Java), el cual es generado por el compilador del lenguaje
Java.
6. Qué es JRE?: es una máquina
virtual de Java y su función es hacer de intermediario entre una aplicación
programada en Java y el sistema operativo que se esté usando. De este modo,
cualquier aplicación puede funcionar en cualquier sistema operativo que
disponga del JRE.
7. Qué es el API de Java?: LA API ó
Application Programming Interface de Java, son clases importantes ó código
preexistente que forman parte del propio lenguaje, algunas de ellas las han
podido desarrollar los propios usuarios, otras pueden ser comerciales.
8. Qué es el Garbage Collector?: Es
un mecanismo implícito de gestión de memoria implementado en algunos lenguajes
de programación de tipo interpretado o semiinterpretado. En los lenguajes
orientados a objetos: se reserva memoria cada vez que el programador crea un
objeto, pero éste no tiene que saber cuánta memoria se reserva ni cómo se hace
esto.
9. Qué es IDE? y cuales son los IDE´s mas
populares para programar en Java:
Un ambiente de desarrollo
integrado o entorno de desarrollo interactivo, en inglés Integrated Development
Environment (IDE), es una aplicación informática que proporciona servicios
integrales para facilitarle al desarrollador o programador el desarrollo de
software.
Normalmente, un IDE
consiste de un editor de código fuente, herramientas de construcción
automáticas y un depurador
IDE’s más populares:
- Netbeans
- Eclipse
- Visual Studio
- JDeveloper
- IntelliJ Idea.