Java es un Lenguaje orientado a Objetos desarrollado por Sun Microsystems a principios de los años 90. James Gosling,Arthur Van Hoff y Andy Bechtolshein fueron los creadores, en un principio el lenguaje lo llamaron Oak, su símbolo es una taza de café.
El objetivo de crear este nuevo lenguaje fue programar la nueva generación de dispositivos inteligentes.
En la actualidad Java es multiplataforma es decir, funciona en SO Linux, Windows, iOS, en la Web, etc. Es Orientado a Objetos, multiprocesos, de fácil distribución.
Plataformas de la Tecnología Java:
Modelar un problema de la vida real mediante entidades las cuales tienen características y comportamientos, estas entidades interactúan unas con otras para poder resolver un problema.
Para desarrollar un programa tenemos que modelar, especificar, construir y documentar los elementos que forman a un sistema.
Características de un Autobús:
Comportamiento
Clase: Es la unidad básica que encapsula toda la información de un Objeto (un objeto es una instancia de una clase). A través de ella podemos modelar el entorno de estudio. Las partes de una clase son:
Diagrama de clases:
UML (Unified Modeling Language)
Declaración de variables de instancia:
Sintaxis:
[modificador] tipo nombreDeVariable (=valor);
modificador: Es utilizado para determinar la accesibilidad o visibilidad del atributo.
nombreDeVariable: Es el nombre o identificador que tendrá la variable de instancia.
Tipo: indica el tipo de dato que vamos a guardar, puede ser primitivo o de referencia.
Promoción:
Cuando una variable de un tipo de dato es asignado a otra variable de otro tipo de dato compatible, puede ocurrir automáticamente una conversión, a esto se le llama promoción.
Ej.
De byte a int, es decir de 8 bits a 32 bits.
Casteo:
Cuando una variable de un tipo de dato de una capacidad mayor, trata de ser asignado a otra variable de otro tipo de capacidad menor, ocurre un error de compilación. Para corregirlo tenemos que usar casteo.
El casteo nos permite asignar valores a una variable a un tipo de datos más pequeño.
Cuando existe casteo debemos tomar en cuenta que existe perdida de información.
Los tipos de datos primitivos pueden castearse implícitamente (promoción) de la siguiente forma:
Importante a considerar:
La programación Orientada a Objetos, está orientada a manejar una clase principal, en este caso es main, diferentes subclases que dependen de la clase principal (main), las cuales se conectan con la principal, mediante objetos.
Cada objeto se conecta en particular con cada clase, para ello le damos el nombre de la clase, el nombre del objeto, la instrucción new y mandamos llamar al constructor del objeto que por default tiene el mismo nombre de la clase.
Vamos por partes, comenzamos un nuevo proyecto con Netbeans:
Nuevo Proyecto:
Java Application:
Damos un nombre al proyecto:
Aparece la siguiente ventana:
Quitamos los comentarios:
Ya tenemos a nuestra clase principal, que es Operaciones, la cual tiene el método main, aprovechamos para crear dos nuevas subclases, dentro del mismo proyecto de Operaciones, cuadrado y triángulo:
El proyecto queda:
Vamos a crear nuestro primer método en la subclase cuadrado:
Conectamos el método recién creado con la clase principal para lo cual es necesario, crear el objeto de referencia con la subclase Cuadrado.
Ejecutamos y comprobamos el funcionamiento.
Añade un nuevo método a la subclase Cuadrado, el cual calculará el perímetro de la figura:
Conecta este nuevo método con la clase principal:
Ejecuta y observa los resultados.
En la clase Triángulo crea los métodos que calculen su área y perímetro, conecta los dos métodos con la clase principal, para lo cual tendrás que crear su variable de referencia.
En cada clase pueden existir diferentes métodos, cada método está conformado por:
· public: se refiere a que es un método público el cual puede ser llamado o invocado desde cualquier otra clase dentro del mismo proyecto.
· void: Refiere a que puede manejar o devolver, cualquier tipo de dato, es decir enteros, flotantes, doublé, cadenas (String), etc.
· Nombre del método: Nombre nemónico del método, de acuerdo a lo que “hace”.
· Por último los (): Paréntesis, refiere a que todo el procedimiento y valores están implícitos dentro del mismo método.
Ej.
public void pericuadrado(){
Instrucciones del método
}
¿Cuantas clases diferentes puede tener el proyecto?
Todas las necesarias y se conectan entre sí mediante los objetos
Abre el proyecto de figuras.
1. Existen en el proyecto dos clases, la principal (main), en donde se calcula el área de las 4 figuras.
2. Otra clase que calcula el perímetro de las mismas figuras.
3. En la clase principal creaste dos objetos el primero para la clase figuras y el segundo para la clase perímetro.
4. Añade dentro del mismo proyecto otra clase llamada figuras3D, en ella vas a agregar 8 métodos, el primero va a calcular la superficie de un cubo, el segundo el volumen del cubo.
5. Lo mismo para las figuras de:
a. Esfera
b. Cilindro
c. Pirámide
6. En la clase principal agrega al menú las figuras que recién creaste y adiciona al switch los casos necesarios, de la nueva clase.
Existen dos tipos de variables, las locales y las globales:
Locales, son aquellas que solo funcionan y trabajan dentro del método donde fueron creadas, fuera de él no son reconocidas. Para crear una variable local es declarada dentro del método.
Globales: Se declaran dentro de la clase pero fuera de cualquier método, las distinguimos ya que aparecen en verde y funcionan en cualquier método que exista dentro de la clase, lo único que necesitas es mandarla llamar.
La variables por default son publicas, es decir pueden ser llamadas y funcionan a todo lo largo y ancho del proyecto, hasta en diferentes clases.
public int lado;