1. Poliformismo
1.1. Características de elementos de distintas clases
1.2. Comportamiento de un objeto dependiendo de que instancia u objeto lo invoque
2. Herencia
2.1. Permite definir una clase ya existente
2.2. Tipos de herencia
2.2.1. Sencilla
2.2.2. Multiple
3. Encapsulamiento
3.1. Ocultamiento del estado de un objeto de tal manera que solo se pueda cambiar mediante operaciones únicas para este
3.2. Interface
3.2.1. Captura la visión externa de una clase
3.3. Implementación
3.3.1. Comprende la representación de la abstracción
3.4. Formas de encapsular
3.4.1. Estandar
3.4.2. Abierto
3.4.3. Cerrado
3.4.4. Protegido
3.4.5. Semicerrado
4. Entorno de desarrollo
4.1. JAVA
4.1.1. Permite desarrollar aplicaciones de cualquier tipo
4.1.2. Entorno de desarrollo JDK
4.1.2.1. Herramientas que utilizan los programadores para el desarrollo de aplicaciones
4.1.2.2. javac = compilador de JAVA
4.1.2.3. java = intérprete de JAVA
4.1.3. Entorno de ejecución JRE
4.1.3.1. JAVA Environment Rutime
4.1.3.2. JAVA Virtual Machine
4.1.4. Fases de un programa
4.1.4.1. Editor de texto
4.1.4.2. Hola JAVA
4.1.4.3. Compilador
4.1.4.4. Hola class
4.1.4.5. Intérprete
4.1.5. Características de JAVA
4.1.5.1. JAVA Virtual Machine
4.1.5.2. Bytecode (código compilador)
4.1.5.3. Garbage Collection
4.1.5.4. Código seguro
4.1.5.4.1. ClassLoader
4.1.5.4.2. Bytecode Vérifier
4.1.5.5. Propiedades
4.1.5.5.1. Palabras reservadas
4.1.5.5.2. Comentarios
4.1.5.5.3. Documentacion
4.1.5.5.4. Tipos de datos
4.1.5.5.5. Variables
4.1.5.5.6. Constantes
4.1.5.5.7. Operadores
4.1.5.5.8. Sentencias
4.1.5.5.9. Conversión de datos
4.1.5.6. Estructuras
4.1.5.6.1. De repetición
4.1.5.6.2. De selección