Sie sind auf Seite 1von 66

CAPITULO IV

INTRODUCCION A LA
PROGRAMACION

DOCENTE:
Ing. ELEANA REGINA VASQUEZ CUTIPA
LENGUAJE DE PROGRAMACION

 Conjunto de instrucciones que sigue la


computadora para alcanzar un resultado
específico (Von Newmann 1946).
 El lenguaje de programación esta constituido por
un conjunto de reglas sintácticas(especifica la
formación de instrucciones válidas) y
semánticas(especifica el significado de estas
instrucciones ), que hacen posible escribir un
programa.
TIPOS DE LENGUAJES DE
PROGRAMACION
 Estructurados (PASCAL, C, BASIC, FORTRAN,
COBOL).
 Orientados a objetos (C++, JAVA,SMALLTALK).
 Simbólicos (LIPS).
 Lógicos(PROLONG).

Los mas difundidos por los programadores son los lenguajes


de programación estructurados y orientados a objetos.
LENGUAJES DE PROGRAMACION
ESTRUCTURADOS
 Son los lenguajes cuyo código fuente presenta un flujo
de arriba hacia abajo (top-down) jerárquicamente,
usando sólo un conjunto restringido de estructuras de
control en cada nivel, instrucciones secuenciales,
estructuras selectivas y estructuras repetitivas.

 Esta metodología ha sido muy utilizada desde los


primeros lenguajes de programación hasta comienzos de
la década de los 90 del siglo XX. Los lenguajes de
programación estructurados mas conocidos son:
PASCAL, C, BASIC, FORTRAN, COBOL
LENGUAJE DE PROGRAMACION
ORIENTADA A OBJETOS
 Esta programación, permite que los datos y
procedimientos, se modelen como unidades llamadas
objetos, los cuales se agrupan por clases. Esta modalidad
de estudiar un programa como un objeto, proviene del
pensamiento humano cuya capacidad de interrelacionarse
con los diversos objetos de la naturaleza es similar.

 Los objetos utilizados para la programación al igual que en


la naturaleza, presentan Propiedades(Atributos), así como
Procesos (Métodos).
Objeto Propiedades Procesos
(atributo) (Métodos)

Tamaño Realiza llamadas.


Color Recibe llamadas.
Forma Recibe y guarda
Tono del timbre mensajes.

Clases
Definen el objeto
CARACTERISTICAS DE LA
POO(PROGRAMACION ORIENTADA A
OBJETOS)
 Los objetos pueden ser reutilizados en otros programas.
 Pueden definirse objetos nuevos que hereden
propiedades y métodos de otros objetos.
 Facilita el análisis diseño y desarrollo de software.
 Incrementa la capacidad del programa, así como su
mantenimiento y modificación
Conceptos Básicos de la POO
Objetos – Objects
Combinación de datos y funciones integrados a una sola unidad
de programación. Dentro de los objetos, residen datos como
números, matrices, caracteres y registros, así como funciones y
procedimientos que operan sobre los objetos.
Clases – Class
Es la descripción de un objeto o conjunto de objetos. La clase
consta de métodos y atributos que define las características de
un objeto o un conjunto de los mismos
Atributos – Attributes
Con los datos o variables que caracterizan el estado de un objeto
Metodos (Procedimientos o funciones) – Methods.
Son las funciones que residen dentro del objeto, las cuales
determinan como va actuar el objeto cuando se lo llame
mediante un mensaje. Cabe señalar, que los datos internos
de un objeto solo pueden ser manipulados por los métodos
del propio objeto.
Mensajes – Message
Es la acción que hace un objeto. Dentro de este concepto, es
importante señalar que el conjunto de mensajes a los cuales
puede responder un objeto, se le denomina protocolo del
objeto.
Paquetes – Package
Librería, agrupamiento o colección de clases.
Propiedades de los objetos
Abstracción:
Cada objeto en el sistema sirve como modelo de una agente abstracto que puede
realizar trabajo, informar y cambiar su estado, y comunicarse con otros
objetos en el sistema sin revelar como se implementan estas características.
Encapsulamiento:
Significa reunir a todos los elementos que pueden considerarse pertenecientes a
una misma entidad, al mismo nivel de abstracción. Esto permite aumentar la
cohesión de los componentes.
Principio de ocultacion:
Cada objeto esta aislado del exterior, es un modulo natural, y cada tipo de objeto
expone una interfaz a otros objetos que especifica como pueden interactuar
con los objetos de la clase. El asilamiento protege a las propiedades de un
objeto contra su modificación por quien no tenga derecho a acceder a ellas,
solamente los propios métodos internos del objeto pueden acceder a su
estado
Polimorfismo:
Comportamiento diferentes, asociados a objetos distintos,
pueden compartir el mismo nombre, al llamarlos por ese
nombre se utilizara el comportamiento correspondiente al
objeto que se este usando.
Herencia:
Las clases no están aisladas, sino que se relacionan entre si,
formando una jerarquía de clasificación. Los objetos
heredan las propiedades y el comportamiento de todas las
clases a las que pertenecen. La herencia organiza y facilita el
polimorfismo y el encapsulamiento permitiendo a los
objetos ser definidos y creados como tipos especializados
de objetos preexistentes.
LENGUAJE DE PROGRAMACION JAVA-
POO
Orígenes del JAVA
 Necesidad de la industria informática para uniformizar el
protocolo de programación entre diferentes dispositivos
electrónicos, además de ser intercambiable y portable.
 En 1990 nace el proyecto interno OAK de SUN
MICROSYSTEMS.
 Para 1995 se convierte OAK a libre acceso, aparece
JAVA.
 El JAVA amplifica su difusión debido a su integración con
INTERNET a mediados de los 90
Características del JAVA
 Se basa en C++ (eliminando sus complejidades)
 No soporta punteros.
 No permite sobrecarga de operadores.
 No soporta herencia multiple.
 Mas seguro que otros lenguajes de programación.
 Incluye un sistema automático para liberar y asignar memoria (no
permite sobre escribir memoria)
 Presenta todos los criterios de la Programación Orientada a Objetos.
 Concebido para trabajar en entornos de red.
 Cuenta con una amplia libreria de clases para conexiones TCP/IP.
 No se interrumpe fácilmente por fallos.
 Permite procesos de Multihilado (multitarea)
 Multiplataforma en cuanto Hardware/software
Principales Aplicaciones del JAVA
 APPLETS: Aplicaciones dentro de un entorno web a
ser ejecutadas en una computadora cliente, su ejecución
esta limitada a la capacidad del navegador que utilice
dicho equipo.
 Aplicaciones de Consola: Aplicaciones a se ejecutadas
o utilizadas en las consolas del sistema.
 Aplicaciones Gráficas: Aplicaiones netamente
orientadas al empleo de los objetos gráficos.
 SERVELETS: Aplicaciones orientadas a sistemas que
administran y utilizan servidores.
Java Virtual Machine (JVM)-Maquina Virtual
de Java
 JAVA es un lenguaje compilado e interpretado, no necesita ser compilado
como el C++, esto quiere decir, que un programa C++ requiere incluir en
su proceso de compilación todas las librerías que utiliza para su
funcionamiento, lo que repercute que la aplicación final tenga un tamano
considerable, así como la dependencia a una sola plataforma para su
ejecución, limitando la portabilidad y empleo de la aplicación.
 El código fuente en JAVA se compila en forma de bcode o jcode
(bytecode), este vendría a ser un código semicopilado, en otros palabras,
precompilado , o sea no es ejecutable directamente sobre el sistema, este
se graba con la extensión .class y es ejecutado posteriormente por el JVM.
 Se puede ejecutar en cualquier plataforma, lo único que se requiere, es que
la plataforma donde se va ejecutar la aplicación tenga el JVM, el cual es
gratuito, de fácil obtención y de espacio pequeno.
 Esta mecánica de ejecución se llama JUST IN TIME.
Proceso de Construcción de una
Aplicación en JAVA

Código Fuente (JAVA)


PRECOMPILADO-COMPILADO

Bytecode (.class)
INTERPRETE JVM

Windows 95, 98, MAC, SYSTEM UNIX,LINUX SYMBIAN


2000,XP,Vista VIII, IX, X , SOLARIS

CODIGO DE PLATAFORMA
Java Developed Kit (JDK-SDK) – Kit
de Desarrollo en JAVA
 Software que permite desarrollar el compilado y
ejecución de programas en JAVA.
 Crea el Bytecode.
 Incluyen Visores de código, Depuradores y otras
utilidades.
 Versiones de JAVA 1.0,luego 1.1, 1.2 hasta la 1.5
, apartir de la versión 1.2 que aparece en 1998, se
denomina JAVA2.
A partir del JAVA2 se tiene los siguientes módulo de programación:

JFC: Java Foundation class, clases estandares de programación.


BEAN: Clases de administración y manejo de redes.
2D: Clases de gráficas de alta calidad.
JMF: Java Media Framework, clases orientadas a paquetes multimedia.
Servelets: Clases netamente orientadas al empleo de servidores de redes.
GE: Clases para la programación y usos electrodomesticos.
CARD: Clases dirigidas para dispositivos electronicos pequenos.
JSPEECH: Clases para procesamiento y reconocimiento de voz.
JSOUND: Clases destinadas al audio de alta calidad.
JTV: Clases para la programación de televisión interactiva.
JNDI: Servicio de búsqueda de datos, etc.
Plataforma de JAVA
 J2SE : Plataforma estándar (SUN MICROSYSTEMS),
sirve para todas las aplicaciones.
 J2EE : Plataforma orientada a aplicaciones para empresas
que dispongan de grandes redes de información, facilitando
la administración de sus servidores.
 J2ME: Versión disponible para dispositivos portátiles y
móviles.

JRE Java Runtime Environmet – Entorno de Ejecución


de Java.
Esta compuesto por la máquina virtual de JAVA (JVM) y
librerías de tiempo de ejecución
Editores y Entornos
 Procesador de texto (LATEX, Word, Notepad, Wordpad,
Wordperfect, etc) SDK (compilador).
Free Code
 Netbeans
 Eclipse
 Sun One Studio.
Liscense Code
 Borland Jbuilder.
 Oracle Builder.
 Visual Age (IBM)
 Visual Café
 Visual J++, Visual J#.NET
 Jcreator.
 Kawa Pro
Editor ECLIPSE
Editor completo para código fuente elaborado en JAVA, incluye depurador y
otras herramientas que complementan su integración con el SDK de Sun
Microsystems.
La interfase de trabajo del SDK del JVM(JRE), es operado mediante el
Eclipse de modo oculto, ya que esta interfase trabaja directamente con la
línea de comandos del respectivo sistema operativo. La versión actual del
JRE es la 1.6.0_02. La versión del entorno Eclipse SDK 3.2.1.

El entorno del ECLIPSE,nos permite:


 Procesos de administración de archivos (crear,guardar,abrir,etc).

 Escribir el código fuente de JAVA o de otro lenguaje.

 Compilar el código fuente.

 Depurar y Evaluar el código fuente.

 Permite construir proyectos (projects) y paquetes (packages)


ENTORNO DEL EDITOR ECLIPSE
Barra de Títulos Barra de Herramientas

Editor Código
Fuente

Explorador

Ventana de Mensajes
TIPOS DE DATOS
a) Datos Simples (Primitivos)
Son los datos que ocupan un espacio determinado o
casillas de memoria, por lo tanto, una variable simple,
hace referencia a un único valor a la vez

Datos Numéricos:
 Enteros: números precedidos por los signos + o – y
que no tienen parte decimal.

 Reales o coma flotante: números precedidos por los


signos + o – y que tienen parte decimal
Tipos de Datos Enteros
TIPO TAMAÑO MINIMO VALOR MAXIMO VALOR
byte 8 bits -128 127

short 16 bits -32 768 32 768

int 32 bits -2 147 483 648 2 147 483 648

long 64 bits -9 223 372 036 854 755 808 9 223 372 036 854 755 808

Por defecto, JAVA asume que todos los datos enteros son de tipo int.
En caso que se desee obligar que un dato numérico sea de tipo long, se debe colocar
al final de su contenido numérico la letra l o L.
Sintaxis: + ó – número_entero l ó L
Tipo de Datos Real o de Coma Flotante
TIPO TAMAÑO MINIMO VALOR MAXIMO VALOR
float 32 bits - 3.40282347E+38 3.40282347E+38

double 64 bits -1.7976931348623147E+308 1.7976931348623147E+308

Para los datos del tipo float, su tamaño se distribuye 1 bit para el signo, 7 bits para el
exponente y 24 bits para la mantisa. Estos datos presentan una precisión aproximada
de 7 dígitos.
Los de tipo double, almacenan en 1 bit el signo, 11 bits el valor exponencial y 52 bits
para la mantisa. Su presición aproximada es de 16 dígitos.
Por defecto JAVA asume double, en todo caso opcionalmente puede adicionar al final
del número las letras f ó F para float, d ó D para double.
Sintaxis: + ó – número_entero.número_fraccionario e ó E + ó – f/d ó F/D
Punto Símbolo Exponencial
base 10
Datos Alfanuméricos
Datos de tipo carácter, estos pueden ser:
 Letras(mayúsculas,minúsculas):
A,B,…,Z/a,b,…,z.
 Letras acentuadas-unicode: á,ñ,ç,etc.
 Números: 0,1,2,…9.
 Símbolos especiales: #,$,^,*,etc.

Se debe tener en cuenta que este tipo de datos


pueden contener números, pero estos no pueden
ser utilizados para realizar operaciones aritméticas.

JAVA es sensitivo a las mayúsculas y minúsculas.


Datos de Tipo Carácter
TIPO TAMAÑO VALOR
char 16 bits a–z
A–Z
#, $, +, ¿, etc.
\n (enter)
\t (tab)
\b (backspace)
\” (doble comilla)
\´ (simple comilla)
\\ (barra inclinada)
\u0007 (bip)
\ddd (representación actual ASCII)
\udddd (representación UNICODE ASCII)
Datos Tipo Lógico

Son datos que sólo que sólo pueden tener dos valores, true
(verdadero o 1) y false (falso o 0).

TIPO TAMAÑO VALOR

Boolean 1 bit True (1)


False (0)
Datos Estructurados (Referenciados)
Son los datos que hacen referencia a un grupo de casillas de
memoria, es decir, un dato estructurado tiene varios
componentes; cada uno de estos componentes puede a su
vez ser un dato simple o estructurado.

 Arreglos- Arrays (adimensionales, unidimensionales,


bidimensionales, tridimensionales, hiperdimensionales,
etc).
 Cadenas de caracteres.
 Conjuntos.
 Clases.
 Interfases.
Datos Estructurados
TIPO DESCRIPCION
String Cadena de caracteres
Void (vacío – sin tipo) Se usa para definir métodos que retorna valores.
null Para valores nulos o desconocidos

Los caracteres – char - y cadena de caracteres – string – pueden


ser concatenados entre si para ambos tipos o para cada uno de
estos con el símbolo +
Declaración y Definición de Datos
Para realizar una declaración y/o definición de datos, se debe utilizar
operadores, identificadores, variables, constantes, métodos y clases.

 Operadores
El uso de los operadores permite efectuar y distinguir que tipo de
operación aritmética (matemáticos), asignativa, lógica y/o relacional
entre los datos (números, constantes o variables) de un objeto.

El uso de los operadores presenta algunas reglas: si una expresión


contiene subexpresiones entre paréntesis, estas se evalúan primero,
respetando claro esta, la jerarquía de los operadores matemáticos en
estas subexpresiones. Si las expresiones se encuentran anidadas por
paréntesis, primero se evalúan las subexpresiones que se encuentran en
el último nivel de anidamiento (interior).

Los operadores matemáticos se aplican teniendo en cuenta la jerarquía y


de izquierda a derecha
Operadores Aritméticos-Matemáticos

OPERADOR SIGNIFICADO EJEMPLO

++ Incremento n++, ++n

-- Decremento n--, --n

+ Suma a+b

- Resta a-b

* Multiplicación a*b

/ División a/b
Residuo (división
% a%b
modular)
Reglas de Jerarquía de los Operadores Aritméticos

Operador Orden de evaluación

() Se evalúan en primer lugar

*, /, % Se evalúan en segundo lugar

+, - Se evalúan en tercer lugar


Operadores Asignativos

Operador Notación Ejemplos

= Asignación a=4
+= Sumar y Asignar a+=2

-= Resta y asignar a-=3

Operadores Lógicos

Operador Notación Ejemplo

! NOT (no) !a
&& AND (y) a && b
|| OR (ó) a || b
Operadores Relacionales

Operador Notación Ejemplo

> mayor que a>b


>= mayor o igual que a >= b
< menor que a<b
<= menor o igual que a <= b
== igual a a == b
!= diferente de a != b
IDENTIFICADORES
Son las palabras exclusivas para denominar o identificar en las casillas
de la memoria a las variables, constantes, métodos, clases, paquetes,
proyectos e interfases.

El nombre que se le asigne a un identificador, no debe coincidir con las


palabras reservadas por el JAVA, ya que estas son de uso exclusivo
del lenguaje, estas son:

abstract Boolean Break Byte Case Catch


Char Class Continue Default Do Double
Else Extends Final Finally Float For
If Implements Import Instanceof Int Interface
Long Native New Null Package Private
Protected Public Return Short Static Super
Switch Synchronised This Throw Throws Transient
Try Void Volatile while
Sintaxis identificadores:

palabra, _palabra,$palabra

Los identificadores deben empezar con una letra (_) o ($). Después de
cada carácter se puede utilizar números, asimismo, se debe recordar
que JAVA es sensible a las mayúsculas como minúsculas.

Los identificadores pueden constar de un carácter o mas (palabras),


además, se debe mantener las siguientes convenciones:

 Paquetes (package)- todo en minúscula - java.awt.


 Clases (class) - primera letra mayúscula - Padre, Hija.
 Variables, métodos - primera letra minúscula - nombre, calcularIGV
Variables
Las variables almacenan los datos a una casilla de memoria, a la
cual por simplicidad se le asigna un nombre (identificador).

Las variables presentan tres partes: nombre (identificador), tipo


de dato, valor o datos almacenados

Sintaxis: tipoDato nombreVariable=valor_inicial

Las variables no pueden contener símbolos o caracteres especiales.


Ejemplos:
 int c=3000
 float g=2/3F
 float z=3.14159f
 Char n=´a´
 Double w=2.2e+34
Constantes
Las constantes son datos que no cambia su contenido o valores durante
la ejecución de un programa, para nombrar las constantes, también se
utilizan los identificadores. Las variables presentan tres partes:
nombre (identificador), tipo de dato, valor o dato almacenado.

Sintaxis: tipoDato nombreVariable=valor_inicial.

En JAVA aparte de utilizar el nombre de la constante y su valor, se


puede utilizar los calificadores final y static.

Si se usa a la vez los calificadores final static indica al programa u


objeto, mantener la constante para todos los métodos, por lo tanto,
esto nos indica que solo existirá una definición para esta constante
sobre todo objeto.
En caso de no colocarse static, implicaría que cada objeto que utilice la
clase que contenga a esta constante, se debería volver definida.

La definición de constantes se puede efectuar en:

Class Nombre_Clase(argumentos)
final static byte edad=25
final static string material=“cemento”

Method Nombre_Método(argumentos)
final float dólar=2.89

Par los métodos usualmente no se coloca el calificador static, solo final ,


esto por la funcionalidad de la constante en el método, donde la
constante sólo se emplea a nivel local, o sea en el interior del método.
Comentarios
El uso de comentarios, le confiere al código fuente de los métodos y
clases la facilidad de su interpretación y depuración, así como facilitar
los procesos de mejoras en su programación.
Dentro del JAVA existen tres tipos de comentarios:
// comentario monolineal.
/* comentario multilineal, se debe colocar al comienzo.
*/ comentario multilineal, se debe colocar al final, entre líneas no
es necesario colocar símbolos.
/** Comentarios multilineal utilizados por la herramienta Javadoc
para incluir al detalle html que genera * incluir los comentarios que se
coloquen entre estos símbolo.

El archivo principal que genera la herramienta Javadoc tiene el nombre


de index.html , este contiene todos los detalles de la programación y
comentarios considerados en el código fuente.
Métodos
Los Métodos definen el comportamiento de las clases de los objetos
mediante procedimientos, rutinas o funciones.
Sintaxis:

Alcance tipo nombreMétodo(argumentos)


declaraciones
sentencias

El nombre que se le asigna a un método, debe definir una tarea


específica, asimismo, esta herramienta de la POO evita la
repetición de código en una aplicación, o sea, se puede reutilizar
métodos ya existentes para crear nuevas aplicaciones.
Métodos Ejecutables sin Retorno de
Define que este método
Valores Indica que este método del tipo main
es una clase y no de un es un método ejecutable, el cual es
objeto invocado por el JVM. Los métodos
Señala que al terminar la main deben declararse con public,
ejecución del método, este no para que puedan ser llamados fuera
Este especificador define
devolverá ningún valor de su clase
un método público de
clase

public static void main(String[ ] args)


{
System.out.print("Bienvenidos a la Facultad de Ingeniería Civil");

}
Argumento o parámetros del método, los cuales pueden ser
ingresados desde la barra de comandos (DOS), esto permite
Entre llaves el al método main que pueda recibir argumentos. El argumento
contenido del método para este caso define que el mismo es del tipo String el cual
se le asigna a la variable args. Los [ ] son indicadores de un
arreglo del tipo array, señala los valores que pasa a la línea de
comandos cuando se inicia la aplicación
Argumento del método, para
Incluye un miembro de
este caso nos imprime el
datos llamados out
mensaje contenido entre comilla
(atributos)

public static void main(String[ ] args)


{
System.out.print("Bienvenidos a la Facultad de Ingeniería Civil");

} Puntos Método de la clase


Marca el fin de cada línea
System que trabaja con
de comando (obligatorio)
los datos del campo out

Nombre de la clase System,


la cual se encuentra como
parte del paquete que viene
por defecto en el JVM:
java.lang
public static void main(String[] args)
{
byte ladoa=8;
Definición de long ladob=1287;
variables
String c="Perímetro\"Final\":\n";
System.out.println("Número Byte:"+ladoa);
System.out.println("Número long:"+ladob);
System.out.println(c+(2*ladoa+2*ladob));
System.out.println("Area:"+ladoa*ladob);
}
Método no Ejecutable
public static void seno( ) Método no
{ Ejecutable sólo para
definir procesos o
double a=3.14159; función
double r=Math.sin(a);
System.out.println(r);
}

Combinación de Métodos Ejecutables y No


Ejecutables
public static void main(String[ ] args) Método Ejecutable
{
System.out.println("seno en radianes: ");
seno(); Método No Ejecutable
}
Definición de Parámetros o Argumentos en Métodos

public static void seno(double a)


{
double r=Math.sin(a);
System.out.println(r);
}

public static void main(String[] args)


{
System.out.println("seno en radianes: ");
seno(Math.PI);
}
Métodos Sobrecargados
Dos o más métodos están sobrecargados cuando tienen el
mismo nombre pero diferentes tipos de argumentos.

Métodos con retorno de valores (return)-sin void


Proporciona la capacidad que tiene el método para retornar
cualquier tipo de dato. Se puede usar el especificador return
para salir en cualquier momento de un método.

Ámbito de las Variables


El ámbito de las variables están en función a la ubicación de su
definición dentro del programa. Las variables definidas a
nivel de atributos o clase son globales, mientras que las
declaradas al interior de un método mantienen un nivel de
local para el método, lo mismo sucede a nivel de bloque
package practica;
public class Métodos_sobrecargados
{
public static void area(int radio) //area del circulo
{ double A1=Math.PI*Math.pow(radio,2);
System.out.println("Area del circulo: " + A1);
} Métodos
public static void area(double h, double b) //area del triángulo Sobrecarga
{ double A2=b*h/2;
System.out.println("Area del triangulo: " + A2); dos
}
public static void area(int B1, int B2, int H) //area del trapecio
{ double A3=(B1+B2)*H/2;
System.out.println("Area del trapecio: " + A3);
}
public static void main(String[ ] args) // Método ejecutable
{ System.out.println("Métodos en Java");
area(5);
area(5.3,4.2); Métodos Sobrecargados
area(8,4,2);
}
}
package practica;
public class Método_retorna
{
public static double area (int radio) //area del circulo
{ return Math.PI*Math.pow(radio,2); Método
Sobrecarga
}
do con
public static double area(double h, double b) //area del triángulo Return
{ return b*h/2; (retorno de
} valores)
public static double area(int B1, int B2, int H) //area del trapecio
{ return(B1+B2)*H/2;
}
// Método ejecutable
public static void main(String[ ] args)
{ System.out.println("Métodos en Java------->");
System.out.println("Area del circulo: " +area(5));
System.out.println("Area del triangulo: " +area(5.3,4.2));
System.out.println("Area del trapecio:" + area(8,4,2));
}
}
Clases
La definición de clases esta asociada a la agrupación de datos (variables
o campos) y de funciones (métodos) que utilizan esta agrupación de
datos
Sintaxis:

alcance tipo NombreClase


{ definición de variables
definición de métodos
}

Se puede asumir que una clase es la representa abstracta de una entidad


del mundo real, mientras que el Objeto es la implementación real de
una clase, esta implementación de objetos sobre bases se da
mediante la siguiente sintaxis:

NombreClase nombreObjeto=new NombreClase( );


Características de las Clases en JAVA

• Todas las clases derivan de la clase Object.


• Las clases están agrupadas en paquetes (package).
• No existe herencia múltiple. Una clase hereda sus características de
una única clase.
• En caso de requerir implementar una herencia múltiple, esta se
efectuará mediante interfase, la cual implementa un
comportamiento o grupo de funciones (métodos) pero no
características (variables).
• Las clases deben mantener el mismo nombre de su archivo, este
nombre, siempre deberá empezar con la primera letra con
mayúsculas.

Sintaxis:
package nombrepaquete
alcance tipo NombreClase
Atributos de Clase
Los atributos almacenan información características de la clase. Estas
características pueden ser ocultas al exterior, a este proceso se denomina
encapsulación y principio de ocultación, el cual permite controlar el acceso a
la clase mediante el empleo de los siguientes calificativos:

private: Atributos y métodos que sólo pueden se accedidos por la clase que los
define.
protected: atributos y métodos que sólo pueden se accedidos por clases hijas o
subclases.
public: atributos y métodos que sólo pueden ser accedidos desde el exterior de
la clase.

package primerpaquete; Asignación de paquete


public class Principal
Asignación de atributos a
{ private String material; la clase Principal
private float costo;
private int cantidad;
}
package practica2;

public class Principal Clase Padre o Principal


{
private String material; Definici{on de
private double costo; atributos para la clase
private int cantidad; Principal

Metodo que pemite ver


public void verData() los atributos privados
{
System.out.print("\n Clase Pricipal---------->");
System.out.print("\n Nombre del material:" + material);
System.out.print("\n Costo unitario:" + costo);
System.out.print("\n cantidad de material:" + cantidad);
}
}
Encapsulamiento y Principio de
Ocultación de Clase
Comprende en asignar la propiedad de ocultar su
información al exterior la clase encapsula-
package practica2;
public class Aplicativa
{
public static void main(String[ ] args) Definición del
{ objeto, a partir de
Principal nuevoInsumo=new Principal(); la clase Principal
nuevoInsumo.verData(); o Padre
} El editor del objeto contempla los
} métodos ocultos de la clase Principal,
los cuales implícitamente tiene definido
sus atributos (variables) en modo
privado
Constructores
Un constructor es un método especial que es llamado
cuando se crea un objeto, por ende , toda clase
tiene un constructor por defecto, cuyo nombre
debe coincidir con el nombre de la clase.

Al momento de construirse una clase se puede


asignar los parámetros o argumentos para su
empleo , asimismo se permite que la misma pueda
estar sobrecargada.
package practica2;

public class Principal


{ private String material; Definición de atributos
private double costo; para la clase Principal
private int cantidad;
Constructor sin
public Principal()
definición de
{ System.out.println("constructor sin parametros");
parámetros
this.material="desconocido";
}
public Principal(String insumo, double precio, int cant) Constructor con
{ this.material=insumo; definición de
this.costo=precio; parámetros
this.cantidad=cant;
}
public void verData()
{ System.out.print("\n Clase Pricipal---------->");
System.out.print("\n Nombre del material:" + material);
System.out.print("\n Costo unitario:" + costo);
System.out.print("\n cantidad de material:" + cantidad);
}
}
package practica2;

public class Aplicativa


{
public static void main(String[] args) Accede a los
{ atributos del
Principal nuevoInsumo=new Principal(); constructor sin
nuevoInsumo.verData(); parámetros

Principal nuevoInsumo2=new Principal("cemento",20,1500);


nuevoInsumo2.verData(); Accede a los
} atributos del
} constructor con
parámetros
Metodología de Acceso a los Atributos Privados

El JAVA nos proporciona la capacidad de acceder a los


componentes privados de una clase, para esto, se debe
utilizar los siguientes métodos:

• Método set, nos permite cambiar o reemplazar el valor de


un atributo o propiedad privada.

• Método get, nos permite obtener o recuperar el valor


previamente asignado a un atributo o propiedad privada
public void setmaterial(String mat)
{ this.material=mat;
}
public void setcosto(double cost) Métodos set
{ this.costo=cost;
}
public void setcantidad(int cant)
{ this.cantidad=cant;
}

public String getmaterial()


{ return material;
}
public double getcosto() Métodos get
{ return costo;
}
public int getcantidad()
{ return cantidad;
}
Herencia de Clases
El proceso de herencia de clases, nos permite
otorgar la capacidad de crear clases hijas que
puedan heredar atributos o propiedades, así
como métodos de las clases padres o principales.

Sintaxis:
public class Secundaria extends Principal
{
Variables , atributos
Métodos
}
Clase Secundara o
package practica2; Hija, la cual hereda
de la clase Principal
public class Secundaria extends Principal
{ private String unidad;
public Secundaria()
{ System.out.println("constructor Secudarioa ------->");
this.unidad="vacio";
}
public Secundaria(String insumo, double precio, int cant, String Und)
{ super(insumo,precio,cant); Instrucción que permite
this.unidad="bolsa"; llamar a los atributos de la
} clase de donde proviene o
public void verData2() hereda la presente clase
{ System.out.println("Clase Secundaria==========>");
System.out.println("nombre del material:" + getmaterial());
System.out.println("costo del material:" + getcosto());
System.out.println("cantidad del material:" + getcantidad());
System.out.println("Unidad: " + unidad);
}
}
package practica2;

public class Herencia


{
public static void main(String[] args)
{
Secundaria nuevoInsumo3=new Secundaria ();
nuevoInsumo3.verData2();

Secundaria nuevoInsumo4=new Secundaria ("cemento",21.5,500,"bolsas");


nuevoInsumo4.verData();
nuevoInsumo4.verData2();

}
Importación de Clases
En JAVA se puede importar paquetes de otras clases existentes,
esto nos da la facilidad de poder utilizar propiedades y
métodos de estas clases, esta metodología de programación
proporciona la capacidad de reducir los tiempos de
programación, así como suprimir la creación de métodos.
Sintaxis:
import nombrepaquete.nombreclase;

Se recomienda que los comandos de importacion de clases, se


encuentren en la primera linea del codigo fuente del programa,
excepto a nivel de comentarios.
En caso de requerir importar las clases de un
paquete de clases se debe utilizar la siguiente
sintaxis:
import nombrepaquete.*;
Esto no incrementa el tamaño del programa, solo
le indica al código fuente de un programa donde
efectuar los procesos de busqueda de los
métodos citados por el programa

Das könnte Ihnen auch gefallen