Programación Orientada a Objetos
Vasquez Montes Carlos Ivan
TPSI / 5 ° A / T - M
Escuela Politécnica de Guadalajara
Vasquez Montes Carlos Ivan
TPSI / 5 ° A / T - M
Escuela Politécnica de Guadalajara
La POO se basa en organizar programas como conjuntos de clases y objetos, lo que permite estructurar y dividir problemas complejos en piezas más manejables. Sus ventajas incluyen reutilización del código, mantenimiento sencillo, y escalabilidad.
Una Super Clase es una clase genérica que define atributos y métodos que pueden ser reutilizados en clases derivadas (subclases).
Facilita la herencia.
Se utiliza para reducir la duplicidad de código.
Una clase es una plantilla o modelo que define los atributos y métodos que tendrán los objetos creados a partir de ella.
Un objeto es una instancia de una clase, lo que significa que es una realización concreta con valores específicos para sus atributos.
Un atributo es una variable dentro de una clase que define las características de un objeto.
Puede tener modificadores como public, private, o protected
Un método define las acciones que los objetos pueden realizar.
Puede recibir parámetros y devolver valores.
Una instancia es un objeto creado a partir de una clase. Se pueden crear múltiples instancias con diferentes valores para los mismos atributos.
Propiedades fundamentales de la orientación a objetos
1.- Abstracción: Selección de los detalles esenciales para representar una entidad.
2.- Encapsulamiento: Oculta los detalles internos de los objetos mediante modificadores de acceso.
3.- Herencia: Permite que una subclase derive atributos y métodos de una superclase.
4.- Polimorfismo: Un método puede tener múltiples formas según la clase en la que se implemente.
Un paquete organiza clases relacionadas dentro de un espacio de nombres, facilitando la modularidad y evitando conflictos de nombres.
Los constructores son métodos especiales usados para inicializar objetos.
Constructor por defecto: No tiene parámetros.
Constructor sobrecargado: Tiene parámetros para inicializaciones específicas.
Tipos de Datos
byte: Entero pequeño.
short: Entero mediano.
int: Entero estándar.
long: Entero grande.
float: Decimal de precisión simple.
double: Decimal de doble precisión.
char: Carácter Unicode.
boolean: Valores true o false.
Las variables almacenan datos y todas las variables deben declararse antes de usar.
Modificadores de acceso:
public: Accesible desde cualquier lugar.
private: Accesible solo dentro de la clase.
protected: Accesible dentro del paquete y subclases.
Locales: Declaradas dentro de un método y usadas solo ahí.
Globales (de clase): Declaradas fuera de métodos, usualmente con static.
Las constantes se declaran usando la palabra clave final. Su valor no puede cambiar después de ser asignado.
La clase Math proporciona métodos estáticos para cálculos matemáticos:
Operaciones :
Math.abs(x): Valor absoluto.
Math.sqrt(x): Raíz cuadrada.
Math.pow(x, y): Potencia.
Math.max(a, b): Máximo entre a y b.
Math.min(a, b): Mínimo entre a y b.
Funciones trigonométricas:
Math.sin(x)
Math.cos(x)
Math.tan(x)
Constantes:
Math.PI: Valor de π.
Math.E: Base del logaritmo natural.
Aritméticos:
+ (suma),
- (resta)
* (multiplicación)
/ (división)
% (módulo).
Relacionales:
== (igual a)
!= (diferente de)
> (mayor que)
< (menor que)
>= (mayor o igual)
<= (menor o igual).
Lógicos:
&& (AND)
|| (OR)
! (NOT).
Asignación:
= (asignación simple).
+=, -=, *=, /=, %= (asignación compuesta).
Incremento y decremento:
++ (incrementa en 1)
-- (decrementa en 1).
Las cadenas (String) son objetos inmutables. Se manejan con la clase String.
Operaciones básicas:
Concatenar: cadena1 + cadena2.
Longitud: cadena.length().
Comparar: cadena1.equals(cadena2).
Métodos :
substring(start, end): Extrae una subcadena.
toUpperCase(), toLowerCase(): Cambia el caso de las letras.
charAt(index): Obtiene el carácter en una posición.
indexOf(subcadena): Encuentra la posición de una subcadena.
Salida de Datos
System.out.print: Imprime texto en la consola sin un salto de línea al final.
System.out.println: Imprime texto en la consola y añade un salto de línea al final.
System.out.printf: Permite formatear la salida de datos.
Entrada de Datos
import java.util.Scanner;
Scanner sc = new Scanner(System.in);
Estructuras de Selección
if (condicion) { // Código
}
if (condicion) { // Código
} else { // Código
}
switch (variable) {
case valor: // Código
break;
default: // Código
}
Estructuras de Repetición
for (inicialización; condición; incremento) {
// Código
}
while (condición) {
// Código
}
do { // Código
} while (condición);