Sunteți pe pagina 1din 36

LABORATORIO N 1

Escuela Profesional: Ingeniera de Sistemas.


Ciclo y Turno: Primero Maana - Noche

Asignatura: Fundamentos de Programacin.


ESCUELA ACADEMICO PROFESIONAL
Semestre Acadmico: 2012 - I
DE INGENIERIA DE SISTEMAS

Docente: Ing. Manuel Mondragn Vilela

Fecha: 6 de septiembre al 10 de septiembre

INTRODUCCION
Para el desarrollo del curso Fundamentos de Programacin, se debe conocer el
concepto de algoritmo, adicional el concepto de programa estos dos conceptos bsicos

Sesin 1: CONCEPTOS FUNDAMENTALES Y REPRESENTACIN DE ALGORITMOS


se encuentran relacionados. Mientras el primero es la especificacin de un conjunto de
pasos (operaciones, instrucciones, rdenes,...) orientados a la resolucin de un
problema, el segundo es el conjunto de operaciones especificadas en un determinado
lenguaje de programacin y para un computador concreto, susceptible de ser
ejecutado (o compilado). Un algoritmo, estrictamente hablando, no puede ejecutarse
hasta que se implementa, ya sea en un lenguaje de programacin, en un circuito
elctrico, en un aparato mecnico, usando papel y lpiz, o en algn otro modelo de
computacin.
El software que usaremos para la prueba y ejecucin de los algoritmos desarrollados en
aula ser el NetBeans 6.9.1, el cual es sencillo de manejar por su entorno prctico, y
permitir al alumno digitar sus soluciones algortmicas para probar la lgica de sus
planteamientos traducidos al lenguaje de programacin Java.

I. OBJETIVOS
Al trmino de esta experiencia, el estudiante ser capaz de:
1.
Conocer el Java.
2.
Traducir a cdigo Java los ejercicios resueltos en pseudocdigos.
3.
Identificar los diversos errores de compilacin y corregirlos
adecuadamente.
4.
Plantear correctamente las estructuras secuenciales en cdigo Java.
5.
Usar correctamente el programa NetBeans 6.9.1.

II. EQUIPOS Y MATERIALES

Computadora personal
Programa NetBeans 6.9.1 instalado
Cuaderno de clases, donde estn
pseudocdigos.

III. METODOLOGIA Y ACTIVIDADES


a) Encender el computador.

los

ejercicios

resueltos

en

b) Crear carpeta donde guardar sus programas. La carpeta debe crearse


en la unidad preparada para guardar los datos del alumno.
c) Ingresar al NetBeans 6.9.1
d) Codificar los algoritmos desarrollados en el aula.
e) Presentar avances y ejecucin de cada uno de los ejercicios al docente o
jefe de prctica encargado para la calificacin correspondiente.
f) Guardar la carpeta de sus archivos a sus memorias.
g) Retirarse del laboratorio de forma ordenada.
IV. IMPORTANTE
Antes de comenzar a manipular el NetBeans, crearemos siempre, una carpeta,
donde se guardarn todas las aplicaciones realizadas en el presente
laboratorio. Para ello realice lo siguiente:
Ingrese al Explorador del Windows (puede hacerlo dando clic derecho
sobre el Botn Inicio de la Barra de Tareas y seleccione la opcin
Explorar).
La ventana del Explorador est dividida en dos columnas, en la columna
de la izquierda busque hacia abajo la unidad de almacenamiento (D:) y
de un clic izquierdo sobre l. Luego dirija el mouse hacia la columna de
la derecha y en un sector vaco, presione clic derecho, seleccione la
opcin Nuevo y luego la opcin Carpeta.
Aparecer una carpeta amarilla con un texto: Nueva Carpeta sombreado
en azul, digite sobre l, el nombre para su carpeta (este puede ser
LABORAT-1), luego de digitar presione la tecla Enter. Listo, ya tiene su
carpeta dentro de la cual guardar todo lo que trabaje a continuacin.
Cierre la ventana del Explorador del Windows.
V. CONCEPTOS BSICOS
FUNDAMENTOS DE PROGRAMACION ORIENTADA A OBJETOS
Objeto. Entidad provista de un conjunto de propiedades o atributos (datos) y de
comportamiento o funcionalidad (mtodos). Se corresponde con los objetos
reales del mundo que nos rodea, o a objetos internos del sistema (del
programa). Es una instancia a una clase.
Ejm:

Homero Simpson

Fresa

Perro

Curso de java

Girasol

Ferrari

Tal como se puede apreciar en los ejemplos, tenemos objetos que son parte del
mundo real, pero tambin tenemos objetos que son abstractos es decir, no son
elementos fsicos y que los podamos identificar con nuestros sentidos, si son
ms que todo la idea de algo que conocemos.

Clases. Una clase es el conjunto de objetos que poseen iguales caractersticas


(propiedades) y el mismo comportamiento (mtodos). Es por esto que se dice
que una clase es el molde del cual se crean los objetos, o dicho en otras
palabras un objeto es una instancia o copia de una clase.
Cuando se juntan varios objetos y estos comparten las mismas caractersticas
y el mismo comportamiento, entonces se puede formar una clase a partir de
estos objetos.
Ejm:
Si juntamos a Juan,
Liliana, Rosa y Mara,
podemos
formar
la
clase Persona.

Si
juntamos
Matemtica,
Comunicaciones
e
Ingls, podemos formar
la clase Curso

CURSO ?

Cuando un objeto es instanciado de una clase, este objeto pasa a tener las
mismas propiedades y mtodos que los que contiene la clase. Es por eso que
las clases son los moldes a partir de los cuales se generan los objetos.

Propiedad o Atributo. Es una caracterstica de un objeto o clase; es decir, una


propiedad es un dato del objeto que se tiene se tiene que almacenar, pues es
una caracterstica propia del objeto.
Ejm:
Clase
Persona

Curso

Pizarra

Propiedades

Nombre

Color de Cabello

Fecha de Nacimiento

Peso

Estatura, entre muchos otros

Nombre del Curso

Nmero de Crditos

Cdigo del Curso, entre otros.

Color

Forma

Fecha de Creacin, entre otros.

Las propiedades de un objeto o clases son las encargadas de contener los


datos propios de un objeto. Estas realizan 2 funciones importantes que son las
siguientes:
1. Ingreso de Datos al Objeto. Mediante esta funcin las propiedades permiten
que se puedan agregar o modificar datos en los objetos. Para ingresar los
datos a un objeto se utiliza la siguiente sintaxis:

<nombre de objeto> . <nombre de propiedad>


ingresar>

Ejm:
Objeto_juan_perez.color_ojos = Azul
Objeto_pizarra.forma = Rectangular

<valor a

Objeto_carro.numero_puertas = 4
En estos ejemplos, lo que se est haciendo es asignarlos los valores a los
objetos respectivos. Es decir, el objeto Juan Prez ahora en su propiedad
Color_ojos tendr el valor Azul; el objeto Pizarra, tendr ahora en su
propiedad Forma el valor Rectangular y el objeto Carro, tendr el
valor 4 en su propiedad Numero_puertas.
2. Lectura de Datos del Objeto. Mediante esta funcin las propiedades
permiten que se puedan ver o leer los datos que contiene un objeto, de esa
manera el objeto revela sus caractersticas a travs de las propiedades.
Para leer los datos de un objeto se utiliza la siguiente sintaxis:

<nombre de variable> =
propiedad>

<nombre de objeto> . <nombre de

Ejm:
Color = Objeto_juan_perez.color_ojos
Forma = Objeto_pizarra.forma
Numero = Objeto_carro.numero_puertas
Si asumimos los valores que hemos ingresado a cada uno de estos objetos
en el ejemplo anterior, podemos decir que:

La variable Color tendr el valor Azul

La variable Forma tendr el valor Rectangular

La variable Numero tendr el valor 4

Mtodo. Los mtodos representan el comportamiento que presenta cada clase


u objeto, es decir en ellos se encuentra presente la forma como se comportan
los objetos o clases en determinadas circunstancias. Los mtodos son acciones
que realiza un objeto cuando se encuentra en ciertas circunstancias.
Ejm:
Suponiendo que tenemos un Objeto GLOBO,
podemos tener los siguientes mtodos

Mtodo Inflar Globo

Mtodo Desinflar Globo

Para que un mtodo sea invocado, debemos utilizar la siguiente sintaxis:


Cuando el Mtodo no devuelve ningn valor
<nombre de objeto> . <nombre de mtodo> (<Valor1>, <Valor2>,,
<ValorN>)

Cuando el mtodo devuelve un valor


<nombre
de
variable>=<nombre
de
mtodo>(<Valor1>, <Valor2>,, <ValorN>)

objeto>.<nombre

de

Caractersticas de un Objeto.
Un objeto se caracteriza por las siguientes particularidades:
1. Identidad. Un identificador inequvoco, que permite identificar al objeto de
los dems objetos que son iguales a l.
2. Estado. Conjunto de valores presentes en las propiedades o atributos de un
objeto en un momento y entorno determinado.
3. Comportamiento. Conjunto de operaciones o acciones que realiza el objeto
para cumplir con rol.

FUNDAMENTOS DE JAVA
Introduccin a Java.
Java surgi en 1991 cuando un grupo de ingenieros de SUN Microsystems
trataron de disear un nuevo lenguaje de programacin destinado a
electrodomsticos. La reducida potencia de clculo y memoria de los
electrodomsticos llev a desarrollar un lenguaje sencillo capaz de generar
cdigo de tamao muy reducido.
Debido a la existencia de distintos tipos de CPUs y a los continuos cambios, era
importante
conseguir una herramienta independiente del tipo de CPU utilizada.
Desarrollaron un cdigo neutro que no dependa del tipo de electrodomstico,
el cual se ejecutaba sobre una mquina hipottica o virtual denominada Java
Virtual Machine (JVM).
Era la JVM quien interpretaba el cdigo neutro convirtindolo a cdigo
particular de la CPU utilizada. Esto permita lo que luego se ha convertido en el
principal lema del lenguaje: Write Once, Run Everywhere. A pesar de los
esfuerzos realizados por sus creadores, ninguna empresa de electrodomsticos
se interes por el nuevo lenguaje.
Como lenguaje de programacin para computadores, Java se introdujo a finales
de 1995. La clave fue la incorporacin de un intrprete Java en la versin 2.0
del programa Netscape Navigator, produciendo una verdadera revolucin en
Internet. Java 1.1 apareci a principios de 1997, mejorando sustancialmente la
primera versin del lenguaje. Java 1.2, ms tarde rebautizado como Java 2,
naci a finales de 1998.
Al programar en Java no se parte de cero. Cualquier aplicacin que se
desarrolle cuelga (o se apoya, segn como se quiera ver) en un gran nmero
de clases preexistentes. Algunas de ellas las ha podido hacer el propio usuario,
otras pueden ser comerciales, pero siempre hay un nmero muy importante de
clases que forman parte del propio lenguaje (el API o Application Programming
Interface de Java).
Java incorpora en el propio lenguaje muchos aspectos que en cualquier otro
lenguaje son extensiones propiedad de empresas de software o fabricantes de
ordenadores (threads, ejecucin remota, componentes, seguridad, acceso a
bases de datos, etc.). Por eso muchos expertos opinan que Java es el lenguaje
ideal para aprender la informtica moderna, porque incorpora todos estos
conceptos de un modo estndar, mucho ms sencillo y claro que con las
citadas extensiones de otros lenguajes. Esto es consecuencia de haber sido
diseado ms recientemente y por un nico equipo.

El principal objetivo del lenguaje Java es llegar a ser el nexo universal que
conecte a los usuarios con la informacin, est sta situada en el ordenador
local, en un servidor de Web, en una base de datos o en cualquier otro lugar.

Java es un lenguaje muy completo (de hecho se est convirtiendo en un macrolenguaje: Java 1.0 tena 12 packages; Java 1.1 tena 23 y Java 1.2 tiene 59). En
cierta forma casi todo depende de casi todo. Por ello, conviene aprenderlo de
modo iterativo: primero una visin muy general, que se va refinando en
sucesivas iteraciones. Una forma de hacerlo es empezar con un ejemplo
completo en el que ya aparecen algunas de las caractersticas ms
importantes.
La compaa SUN describe el lenguaje Java como simple, orientado a objetos,
distribuido,
interpretado, robusto, seguro, de arquitectura neutra, portable, de altas
prestaciones, multitarea y dinmico.

Qu es Java 2?
Java 2 (antes llamado Java 1.2 o JDK 1.2) es la tercera versin importante del
lenguaje
de
programacin Java.
No hay cambios conceptuales importantes respecto a Java 1.1 (en Java 1.1 s
los hubo respecto a Java 1.0), sino extensiones y ampliaciones, lo cual hace
que a muchos efectos. Por ejemplo, para esta introduccin sea casi lo mismo
trabajar con Java 1.1 o con Java 1.2.
Los programas desarrollados en Java presentan diversas ventajas frente a los
desarrollados en otros lenguajes como C/C++. La ejecucin de programas en
Java tiene muchas posibilidades: ejecucin como aplicacin independiente
(Stand-alone Application), ejecucin como applet, ejecucin como servlet, etc.

Un applet es una aplicacin especial que se ejecuta dentro de un navegador o


browser (por ejemplo Netscape Navigator o Internet Explorer) al cargar una
pgina HTML desde un servidor Web.
El applet se descarga desde el servidor y no requiere instalacin en el
ordenador donde se encuentra el browser. Un servlet es una aplicacin sin
interface grfica que se ejecuta en un servidor de Internet. La ejecucin como
aplicacin independiente es anloga a los programas desarrollados con otros
lenguajes.
Adems de incorporar la ejecucin como Applet, Java permite fcilmente el
desarrollo
tanto
de arquitecturas cliente-servidor como de aplicaciones distribuidas,
consistentes
en
crear
aplicaciones capaces de conectarse a otros ordenadores y ejecutar tareas en
varios
ordenadores
simultneamente, repartiendo por lo tanto el trabajo. Aunque tambin otros
lenguajes de programacin permiten crear aplicaciones de este tipo, Java
incorpora en su propio API estas funcionalidades.

El Entorno de Desarrollo de Java


Existen distintos programas comerciales que permiten desarrollar cdigo Java.
La compaa Sun, creadora de Java, distribuye gratuitamente el Java(tm)
Development Kit (JDK). Se trata de un conjunto de programas y libreras que
permiten desarrollar, compilar y ejecutar programas en Java.
Incorpora adems la posibilidad de ejecutar parcialmente el programa,
deteniendo la ejecucin en el punto deseado y estudiando en cada momento el
valor de cada una de las variables (con el denominado Debugger). Cualquier
programador con un mnimo de experiencia sabe que una parte muy

importante (muchas veces la mayor parte) del tiempo destinado a la


elaboracin de un programa se destina a la deteccin y correccin de errores.
Existe tambin una versin reducida del JDK, denominada JRE (Java Runtime
Environment) destinada nicamente a ejecutar cdigo Java (no permite
compilar).
Los IDEs (Integrated Development Environment), tal y como su nombre indica,
son
entornos
de desarrollo integrados. En un mismo programa es posible escribir el cdigo
Java, compilarlo y ejecutarlo sin tener que cambiar de aplicacin.
Estos entornos integrados permiten desarrollar las aplicaciones de forma
mucho ms rpida, incorporando en muchos casos libreras con componentes
ya desarrollados, los cuales se incorporan al proyecto o programa. Como
inconvenientes se pueden sealar algunos fallos de compatibilidad entre
plataformas, y ficheros resultantes de mayor tamao que los basados en clases
estndar.

El compilador de Java.
Se trata de una de las herramientas de desarrollo incluidas en el JDK. Realiza
un anlisis de sintaxis del cdigo escrito en los ficheros fuente de Java (con
extensin *.java). Si no encuentra errores en el cdigo genera los ficheros
compilados (con extensin *.class). En otro caso muestra la lnea o lneas
errneas.
En el JDK de SUN dicho compilador se llama javac.exe. Tiene numerosas
opciones, algunas de las cuales varan de una versin a otra. Se aconseja
consultar la documentacin de la versin del JDK utilizada para obtener una
informacin detallada de las distintas posibilidades.

La Java Virtual Machine.


Tal y como se ha comentado al comienzo del
captulo, la existencia de distintos tipos de
procesadores y ordenadores llev a los
ingenieros de SUN a la conclusin de que era
muy importante conseguir un software que no
dependiera del tipo de procesador utilizado.

Se plante la necesidad de conseguir un cdigo capaz de ejecutarse en


cualquier tipo de mquina. Una vez compilado no debera ser necesaria
ninguna modificacin por el hecho de cambiar de procesador o de ejecutarlo en
otra mquina.
La clave consisti en desarrollar un cdigo neutro el cual estuviera preparado
para ser ejecutado sobre una mquina hipottica o virtual, denominada Java
Virtual Machine (JVM). Es esta JVM quien interpreta este cdigo neutro
convirtindolo a cdigo particular de la CPU utilizada. Se evita tener que
realizar un programa diferente para cada CPU o plataforma.
La JVM es el intrprete de Java. Ejecuta los bytecodes (ficheros compilados con
extensin
*.class) creados por el compilador de Java (javac.exe). Tiene numerosas
opciones entre las que destaca la posibilidad de utilizar el denominado JIT (JustIn-Time Compiler), que puede mejorar entre 10 y 20 veces la velocidad de
ejecucin de un programa.

Caractersticas del Lenguaje JAVA

Multiplataforma

Multihilo

Orientado a objetos

Simple

ESTRUCTURA DE UN PROGRAMA JAVA

PAQUETES. La palabra clave package permite agrupar clases e interfaces. Los


nombres de los paquetes son palabras separadas por puntos y se almacenan
en directorios que coinciden con esos nombres. Por ejemplo, los ficheros
siguientes, que contienen cdigo fuente Java:
Applet.java, AppletContext.java, AppletStub.java, AudioClip.java
contienen en su cdigo la lnea:
package java.applet;
Y las clases que se obtienen de la compilacin de los ficheros anteriores, se
encuentran con el nombre nombre_de_clase.class, en el directorio: java/applet

Import
Los paquetes de clases se cargan con la palabra clave import,
especificando el nombre del paquete como ruta y nombre de clase (es lo
mismo que #include de C/C++). Se pueden cargar varias clases
utilizando un asterisco.
import java.Date;
import java.awt.*;
Si un fichero fuente Java no contiene ningn package, se coloca en el
paquete por defecto sin nombre. Es decir, en el mismo directorio que el
fichero fuente, y la clase puede ser cargada con la sentencia import:
import MiClase;

Paquetes de Java
El lenguaje Java proporciona una serie de paquetes que incluyen
ventanas, utilidades, un sistema de entrada/salida general, herramientas
y comunicaciones. En la versin actual del JDK, los paquetes Java que se
incluyen son:
java.applet. Este paquete contiene clases diseadas para usar con
applets. Hay una clase Applet y tres interfaces: AppletContext,
AppletStub y AudioClip.

java.awt. El paquete Abstract Windowing Toolkit (awt) contiene clases


para generar widgets y componentes GUI (Interfaz Grfico de Usuario).
Incluye las clases Button, Checkbox, Choice, Component, Graphics,
Menu, Panel, TextArea y TextField.
java.io. El paquete de entrada/salida contiene las clases de acceso a
ficheros: FileInputStream y FileOutputStream.

java.lang. Este paquete incluye las clases del lenguaje Java propiamente
dicho: Object, Thread, Exception, System, Integer, Float, Math, String,
etc.
java.net. Este paquete da soporte a las conexiones del protocolo TCP/IP
y, adems, incluye las clases Socket, URL y URLConnection.
java.util. Este paquete es una miscelnea de clases tiles para muchas
cosas en programacin. Se incluyen, entre otras, Date (fecha), Dictionary
(diccionario), Random (nmeros aleatorios) y Stack (pila FIFO).

CLASES. Las clases son lo ms simple de Java. Todo en Java forma parte de
una clase, es una clase o describe cmo funciona una clase. El conocimiento de
las clases es fundamental para poder entender los programas Java.
Todas las acciones de los programas Java se colocan dentro del bloque de una
clase o un objeto. Todos los mtodos se definen dentro del bloque de la clase,
Java no soporta funciones o variables globales.
Esto puede despistar a los programadores de C++, que pueden definir
mtodos fuera del bloque de la clase, pero esta posibilidad es ms un intento
de no separarse mucho y ser compatible con C, que un buen diseo orientado
a objetos. As pues, el esqueleto de cualquier aplicacin Java se basa en la
definicin de una clase.
Todos los datos bsicos, como los enteros, se deben declarar en las clases
antes de hacer uso de ellos. En C la unidad fundamental son los ficheros con
cdigo fuente, en Java son las clases. De hecho son pocas las sentencias que
se pueden colocar fuera del bloque de una clase. La palabra clave import
(equivalente al #include) puede colocarse al principio de un fichero, fuera del
bloque de la clase. Sin embargo, el compilador reemplazar esa sentencia con
el contenido del fichero que se indique, que consistir, como es de suponer, en
ms clases.

Tipos de Clases
Hasta ahora slo se ha utilizado la palabra clave public para calificar el
nombre de las clases que hemos visto, pero hay tres modificadores ms.
Los tipos de clases que podemos definir son:
1. Abstract. Una clase abstract tiene al menos un mtodo abstracto. Una
clase abstracta no se instancia, sino que se utiliza como clase base
para la herencia.
2. Final. Una clase final se declara como la clase que termina una
cadena de herencia. No se puede heredar de una clase final. Por
ejemplo, la clase Math es una clase final.
3. Public. Las clases public son accesibles desde otras clases, bien sea
directamente o por herencia. Son accesibles dentro del mismo
paquete en el que se han declarado. Para acceder desde otros
paquetes, primero tienen que ser importadas.
4. Synchronizable. Este modificador especifica que todos los mtodos
definidos en la clase son sincronizados, es decir, que no se puede
acceder al mismo tiempo a ellos desde distintos threads; el sistema
se encarga de colocar los flags necesarios para evitarlo. Este
mecanismo hace que desde threads diferentes se puedan modificar
las mismas variables sin que haya problemas de que se
sobreescriban.
5. Private. Las clases privadas solo pueden ser utilizadas dentro de las
clases donde son creadas, mas no pueden ser accedidas desde otras
clases.
6. Protected. Las clases protegidas pueden ser accedidas por sub clases
de la clase donde son declaradas o por otras clases dentro del mismo
paquete.

Sintaxis de una Clase


<Tipo de Clase> class <Nombre de la Clase>
{
< cdigo >
}

ATRIBUTOS. Los datos se encapsulan dentro de una clase declarando


variables dentro de las llaves de apertura y cierre de la declaracin de la clase,
variables que se conocen como atributos. Se declaran igual que las variables
locales de un mtodo en concreto.
Por ejemplo, este es un programa que declara una clase MiPunto, con dos
atributos enteros llamados x e y.
class MiPunto
{
int x, y;
}
Los atributos se pueden declarar con dos clases de tipos: un tipo simple Java
(ya descritos), o el nombre de una clase.
Cuando se realiza una instancia de una clase (creacin de un objeto) se
reservar en la memoria un espacio para un conjunto de datos como el que
definen los atributos de una clase. A este conjunto de variables se le denomina
variables de instancia.
LOS MTODOS. Los mtodos son subrutinas que definen la interfaz de una
clase, sus capacidades y comportamiento.
Un mtodo ha de tener por nombre cualquier identificador legal distinto de los
ya utilizados por los nombres de la clase en que est definido. Los mtodos se
declaran al mismo nivel que las variables de instancia dentro de una definicin
de clase.
En la declaracin de los mtodos se define el tipo de valor que devuelven y a
una lista formal de parmetros de entrada, de sintaxis tipo identificador
separadas por comas. La forma general de una declaracin de mtodo es:

Sintaxis de un Mtodo
<Tipo de Acceso> <tipo_devuelto> <nombre_de_mtodo> (<listaformal-de-parmetros>)
{
cuerpo_del_mtodo;

}
Por ejemplo el siguiente mtodo devuelve la suma de dos enteros:
int metodoSuma( int paramX, int paramY )
{
return ( paramX + paramY );
}
En el caso de que no se desee devolver ningn valor se deber indicar
como tipo la palabra reservada void. As mismo, si no se desean
parmetros, la declaracin del mtodo debera incluir un par de
parntesis vacos (sin void):
void metodoVacio( ) { };
Los mtodos son llamados indicando una instancia individual de la clase,
que tendr su propio conjunto nico de variables de instancia, por lo que
los mtodos se pueden referir directamente a ellas.
El mtodo inicia() para establecer valores a las dos variables de instancia
sera el siguiente:
void inicia( int paramX, int paramY )
{
x = paramX;
y = paramY;
}
LOS OBJETOS
Referencias a Objeto e Instancias
Los tipos simples de Java describan el tamao y los valores de las
variables. Cada vez que se crea una clase se aade otro tipo de dato que
se puede utilizar igual que uno de los tipos simples. Por ello al declarar
una nueva variable, se puede utilizar un nombre de clase como tipo. A
estas variables se las conoce como referencias a objeto.
Todas las referencias a objeto son compatibles tambin con las
instancias de subclases de su tipo. Del mismo modo que es correcto
asignar un byte a una variable declarada como int, se puede declarar

que una variable es del tipo MiClase y guardar una referencia a una
instancia de este tipo de clase:
MiPunto p;
Esta es una declaracin de una variable p que es una referencia a un
objeto de la clase MiPunto, de momento con un valor por defecto de null.
La referencia null es una referencia a un objeto de la clase Object, y se
podr convertir a una referencia a cualquier otro objeto porque todos los
objetos son hijos de la clase Object.
El operador new
El operador new crea una instancia de una clase (objetos) y devuelve
una referencia a ese objeto. Por ejemplo:
MiPunto p2 = new MiPunto();
Este es un ejemplo de la creacin de una instancia de MiPunto, que es
controlador por la referencia a objeto p2.
Hay una distincin crtica entre la forma de manipular los tipos simples y
las clases en Java: Las referencias a objetos realmente no contienen a los
objetos a los que referencian. De esta forma se pueden crear mltiples
referencias al mismo objeto, como por ejemplo:
MiPunto p3 =p2;
Aunque tan slo se cre un objeto MiPunto, hay dos variables (p2 y p3)
que lo referencian. Cualquier cambio realizado en el objeto referenciado
por p2 afectar al objeto referenciado por p3. La asignacin de p2 a p3
no reserva memoria ni modifica el objeto.
Acceso al objeto
El operador punto (.) se utiliza para acceder a las variables de instancia y
los mtodos contenidos en un objeto, mediante su referencia a objeto:
referencia_a_objeto.nombre_de_variable_de_instancia
referencia_a_objeto.nombre_de_mtodo( lista-de-parmetros );
Hemos creado un ejemplo completo que combina los operadores new y
punto para crear un objeto MiPunto, almacenar algunos valores en l e
imprimir sus valores finales:
MiPunto pg = new MiPunto();
pg.dibujapunto()

pg.radio = 123.69
Este es uno de los aspectos ms importantes de la diferencia entre la
programacin orientada a objetos y la programacin estructurada.
Cuando se llama al mtodo pg.dibujapunto(), lo primero que se hace en
el mtodo es sustituir los nombres de los atributos de la clase por las
correspondientes variables de instancia del objeto con que se ha
llamado.
Si otros objetos llaman a pg.dibujapunto(), incluso si lo hacen de una
manera concurrente, no se producen efectos laterales, ya que las
variables de instancia sobre las que trabajan son distintas.
La referencia this
Java incluye un valor de referencia especial llamado this, que se utiliza
dentro de cualquier mtodo para referirse al objeto actual. El valor this
se refiere al objeto sobre el que ha sido llamado el mtodo actual.
Se puede utilizar this siempre que se requiera una referencia a un objeto
del tipo de una clase actual. Si hay dos objetos que utilicen el mismo
cdigo, seleccionados a travs de otras instancias, cada uno tiene su
propio valor nico de this.
En Java se permite declarar variables locales, incluyendo parmetros
formales de mtodos, que se solapen con los nombres de las variables
de instancia.

Ejemplo.
Public class Nombre_Clase
{
Public void accion01 ()
{
<cdigo>
}
Public int accion02 (double radio, string tipo)
{
<cdigo>

this.accion01();
}
}
TIPOS DE DATOS EN JAVA
VARIABLES. Una variable es un nombre simblico que se utiliza para
identificar el contenido de una direccin en memoria.

El trabajo con datos es parte fundamental de cualquier programa, las variables


y sus tipos de datos, se encargan de almacenar esa informacin y la memoria
que es necesaria para gestionarlas. La manera ms habitual de declarar una
variable siempre contiene dos elementos, el tipo de la variable y su nombre y
terminando la declaracin con punto y coma.
Pero tambin se puede declarar en una misma instruccin ms de una variable
del mismo tipo siempre separadas por una coma, al igual que se puede
inicializar una variable en el momento de declararla.
Inicializar una variable consiste en almacenar un determinado valor en el
espacio de memoria reservado para ella.

Declaracin de una Variable

tipoVariable nombre;
tipoVariable nombre = <valor inicial>;

Ejm.
int midato;
int midato = 32;
int midatoA= 3, midatoB = 6, midatoC = 5;
Diferentes tipos de variables.
Las variables en Java deben tener un tipo de dato asociado. El tipo de
dato de esa variable indicara los valores que la variable puede contener
y las operaciones que se pueden realizar con ella. Podemos diferenciar
los datos en Java en dos categoras de datos principales: los tipos
primitivos y los tipos referenciados.
Los tipos primitivos contienen un slo valor e incluyen los tipos como los
enteros, coma flotante, los caracteres, de tipo booleano etc...
Los tipos referenciados se llaman as porque el valor de una variable de
referencia es una referencia (un puntero) hacia el valor real. En Java
tenemos los arrays, las clases y los interfaces como tipos de datos
referenciados.
1. Enteros. Estos tipos son byte, short, int y long, que guardan el signo
valor, estos representan un nmero y no pueden representar
elementos fraccionarios. Esto puede ser un buen ejemplo de
declaracin de tipos de datos enteros.

2. Nmeros en coma flotante. Estos son float y double y pueden


almacenar nmeros en coma flotante y con signo, esto quiere decir
que nos permiten representar nmeros decimales.

3. El tipo Carcter. Estos son de tipo char, que almacena la


representacin de los caracteres (letras o nmeros), un carcter esta
almacenado en 16 bits, y siguen un estndar que es el Unicode.

Los caracteres en Java se pueden especificar de forma normal o con


secuencias de escape, utilizando la barra invertida "\" seguida de una
letra:( \r) o utilizando la barra invertida con una "u" seguida de un
numero hexadecimal (\u0000d), en este caso hemos especificado la
secuencia de escape \r y su cdigo unicode correspondiente del
retorno de carro.
Ejemplo de secuencias de escape:

4. El tipo booleano. Este solo guarda dos valores: verdadero (true) o


falso(false), y no como ocurre en otros lenguajes que toman los
valores 0 y 1. Generalmente su utilizacin es muy frecuente para
determinar el flujo de los programas.

5. Tipos de datos string (las cadenas). En realidad una variable de tipo


string, ms que un tpo propio de Java es una clase tratada con todo
rigor como un objeto ms de Java.
En Java el contenido de las cadenas no se pueden modificar aun que
se vuelva a definir la variable String, si en un programa se necesita
modificar el contenido de una cadena lo ms correcto sera utilizar la
clase StringBuffer, la cual posee muchos metodos para este cometido
como append(), etc.
En este ejemplo definimos una cadena:
String miCadena = "Esto es una cadena";

Nombres de Variables
Un programa se refiere al valor de una variable por su nombre. Por
convencin, en Java, los nombres de las variables empiezan con una
letra minscula (los nombres de las clases empiezan con una letra
mayscula).
Todos los nombres de variables de instancia o de clase deben estar
constituidos por palabras con la primera letra de la primera palabra en
minscula y la primera letra de las palabras internas en mayscula.
Los nombres de variables deben ser cortos y significativos. La eleccin
de un nombre de variable debe ser mnemotcnico, es decir, pensado
para que un lector casual al verla comprenda su uso. Se deben evitar las
variables de una sola letra, excepto en variables temporales de corto
uso.
Nombres comunes para este tipo de variables son: i, j, k, m y n para
enteros; c, d, y e para caracteres.
char Nombre;
Double myMedida;
int x,y;

2. OPERADORES.

a) Matemticos.

b) Comparacin.

c) Lgicos.

d) Incrementales.

3. CONVERSIN DE TIPO DE DATOS.

VI.PROCEDIMIENTO
a) Encender el computador.
b) Crear carpeta donde guardar sus programas.
Primero debe ingresar al explorador de Windows (Puede hacerlo por
medio del botn inicio programas accesorios - explorador de
Windows

Una vez abierto el explorador de Windows se procede a seleccionar la


unidad donde se va a crear la carpeta de cada laboratorio

Selecciona la
unidad donde
crearas tu
carpeta

Procede a crear la carpeta donde guardaras tu material con el


nombre LABORAT-01
c) Ingresar al NetBeans, puedes hacerlo a travs del botn inicio programas NetBeans

d) La primera vista una vez abierto el programa es la siguiente, en ella


procederemos a seleccionar el trabajo que deseamos hacer, desde
generar un nuevo proyecto hasta cerrar. Para el presente caso debemos
generar un nuevo proyecto en Java.

Dar clic en el botn nuevo de la opcin archivo y luego en nuevo proyecto,


de esta manera podremos generar el cdigo para un nuevo programa.

Clic en barra de
men Archivo
Proyecto Nuevo

Una vez que se dio clic en proyecto nuevo, nos aparece la siguiente ventana
en donde procederemos a colocar el tipo de proyecto que vamos a generar
en este caso se selecciona la carpeta Java y el proyecto es una aplicacin
Java.

Seleccionar la
categora del
proyecto

Seleccionar el
tipo de
proyecto

Clic en el botn
siguiente

Luego de dar clic en el botn siguiente aparece la siguiente ventana en


donde debemos colocar el nombre del proyecto, es con este nombre con el
que se va a guardar el cdigo que vamos a generar con extensin java.
Luego debemos seleccionar la ubicacin donde se va a guardar nuestro
proyecto, es en esta parte donde debemos seleccionar la ubicacin donde
hemos creado la carpeta en la que se guardar los proyectos que vayamos
generando. Es recomendable activar la casilla que nos indica usar una

carpeta dedicada para almacenar las bibliotecas. Para terminar dar clic en
terminar.

Coloque el nombre del


proyecto

Seleccione la carpeta
donde se guardar
nuestros proyectos

Activar
casilla

Dar clic para


crear proyecto

Una vez que dimos clic en terminar nos aparece en el programa la


estructura bsica para la creacin de nuestro primer programa.
Dando clic aqu podemos
ejecutar el cdigo
generado en nuestro
Esta lnea nos muestra la
creacin de nuestro
proyecto en este caso se
Esta lnea nos muestra la
cabecera de la clase

Esta lnea nos muestra la


cabecera de lo que sera
nuestro programa
principal. Dentro de este
debemos registrar el
cdigo que corresponda
En esta ventana podremos
observar los resultados
luego de la ejecucin del
cdigo que hemos
generado

e) Codificar los algoritmos desarrollados en el aula.

Enunciado 01
Ahora procederemos a codificar nuestro primer programa, basados en el
algoritmo generado para dar solucin al primer problema planteado en la gua
prctica: Algoritmo para calcular le peso total de 5 sacos de arroz.
Analizando el problema
Como podemos observar en este caso es necesario saber los valores de
algunos datos que se presentan a manera de incgnitas para nosotros.

Si quisiramos resolver el problema que nos ha sido planteado


podemos

razonar

fcilmente

que

para

saber

cunto

pesan

determinado nmero de sacos de arroz solo debo multiplicar el peso


en kilos de un saco de arroz por la cantidad de sacos de arroz que se

tiene.
Entonces hemos podido identificar dos datos que son necesarios para
realizar el calculo que nos ha sido solicitado, estos datos son: el peso
del saco de arroz en kilos el cual no conocemos, por lo tanto pasa a
ser para nosotros un dato de entrada, es decir, un dato que nos va a
ser dado por el usuario por lo cual puede ser variable; el siguiente
dato es la cantidad de sacos que se tiene, dato que nos ha sido
entregado en el enunciado del problema y es un valor constante (5
sacos). De esta parte de nuestro anlisis podemos identificado un
dato de entrada para nuestro problema que es el peso del saco de

arroz en kilos.
Una vez definidas las variables de entrada veamos cual es el clculo
o proceso necesario para poder llegar a la solucin o respuesta que
nos ha sido solicitada.
Peso total de sacos= cantidad de sacos * peso de cada saco
Como ya sabemos el nmero de sacos que se tiene nuestra formula o
proceso de clculo puede quedar de la siguiente manera
Peso total de sacos=5 * peso de cada saco

Finalmente hemos identificado la respuesta que nos ha sido solicitada


que es el peso total de los sacos de arroz, a este le llamaremos dato
de salida.

Desarrollando el algoritmo
Para la solucin de problemas siempre hemos tenido en cuenta un proceso que
es la definicin de los datos de entrada, proceso de clculo y la salida o
entrega de la respuesta. En el caso de los algoritmos sigue siendo el mismo
trabajo ya que el algoritmo es la representacin de la solucin de problemas.

ENTRADA

PROCESO

SALIDA

Entrada. Para este primer paso del proceso como hemos observado en la
solucin del problema tratamos de identificar cules son los datos necesarios
para llegar a la solucin del problema. Pudimos identificar en este ejemplo
como dato de entrada el peso en kilos de un saco de arroz, dato para el cual
vamos a usar un identificador, por ejemplo X o Y, para este caso nuestro dato
quedar identificado como peso.
Bien podemos observar entonces que hemos identificado una variable o dato
de entrada llamada peso, ahora es necesario determinar con qu tipo de dato
va a trabajar dicha variable (nmeros enteros, decimales, texto, etc). Para el
presente caso se determina que el peso va a ser un nmero entero.
Proceso. En esta fase se define la operacin u operaciones (clculos o tareas)
necesarias para llegar a la respuesta o solucin que nos ha sido solicitada. Para
el ejemplo actual quedara establecido de la siguiente manera:
PesoTotal = Peso *5
PesoTotal = El peso de los 5 sacos de arroz
Cantidad de sacos = 5
Peso = Peso establecido para un saco de arroz

Salida. La salida est identificada como la respuesta o respuesta que nos han
sido solicitadas, para el presente ejemplo nuestra salida es el peso total de los
5 sacos de arroz y su identificador definido es PesoTotal.
Luego de tener claras las tres etapas de solucin del problema pasamos a la
definicin del algoritmo, en este caso mediante el uso de Pseudocdigo.
Para finalizar nuestro algoritmo en pseudocdigo queda establecido de la
siguiente manera
Procedimiento Principal
Inicio
Entero Peso, PesoTotal // Definiendo las variables que usaremos
Escribir (Ingrese el peso del saco de arroz) // Enviar un mensaje
Leer(peso) // Capturar el dato ingresado por el usuario
PesoTotal = Peso * 5 // Realizar la siguiente ecuacin
Salida(PesoTotal) // Lamada al procedimiento Salida
Fin
Procedimiento Salida(entero PesoTotal)
Inicio
Escribir(El peso total de los sacos de arroz es: , PesoTotal)
Fin
Codificando en Java.
Para finalizar el algoritmo debe quedar traducido a un lenguaje de
programacin, en este caso el lenguaje con el que trabajamos en Java, para lo
cual ser necesario que creemos nuestro proyecto a travs de NetBeans.

Luego de asignar el nombre a nuestro proyecto podemos codificar nuestro


programa.
package peso; // definicin de nuestra aplicacin llamada peso
import javax.swing.JOptionPane;// importamos libreria para poder usar
comandos de escritura y lectura JOptionPane, a travs del cual se logra enviar
mensajes a pantalla y leer lo que escribe el usuario del programa
public class Main { //Clase principal
public static void main(String[] args) { // Desarrollo de nuestra aplicacin
principal
int Peso,PesoTotal;
Peso=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el peso
del saco de arroz: "));
PesoTotal=Peso*5;
Salida(PesoTotal);// llamada para que se ejecute el modulo salida
}
public static void Salida (int PesoTotal) // generacin de un modulo secundario
o procedimiento
{
JOptionPane.showMessageDialog(null,"El total de los sacos de arroz
es: " + PesoTotal);
}

}
Nuestro reto es desarrollar el siguiente problema y llevarlo a Pseudocdigo y
cdigo Java:
Realizar un programa que permita calcular el peso total de los sacos de papa
que llegan a una tienda.
Enunciado 02
El siguiente enunciado nos pide: Algoritmo para calcular el 15% del sueldo de
un empleado.
Analizando el problema
Como podemos observar para el presente ejercicio es necesario
conocer el sueldo del trabajador y el porcentaje que debemos
calcular para llegar a nuestra respuesta. Sin embargo el porcentaje
que nos solicitan ya lo conocemos, es 15% un valor constante, por lo
cual dejamos identificado una variable de entrada que sera el sueldo
del trabajador.
El proceso de clculo para llegar a la respuesta queda definido de la
siguiente manera:
Porcentaje de sueldo = Sueldo de trabajador * 0.015
Finalmente la salida identificada es el porcentaje del sueldo que
debemos hallar

Codificando en Java
package sueldoporc;
import javax.swing.JOptionPane;
public class Main {
public static void main(String[] args) {
double sueldo;
double porc;
sueldo=Double.parseDouble(JOptionPane.showInputDialog("Ingrese el
sueldo: "));
porc=sueldo*0.15;
salida(sueldo,porc);
}
public static void salida(double sueldo, double porc)
{
JOptionPane.showMessageDialog(null,"El 15 % de " + sueldo + " es: " +
porc);
}
}

Nuestro reto es desarrollar el siguiente problema y llevarlo a Pseudocdigo y


cdigo Java:
Realizar un programa que permita calcular el 7% del ingreso anual de una
empresa.
Enunciado 03
Algoritmo para cambiar un monto en soles a euros (tipo de cambio 5,40).
Analizando el problema
Una vez ledo el enunciado podemos observar que tenemos una
variable o un dato que nos debe ser proporcionado, en este caso el
monto en soles y tambin manejamos un valor conocido o constante
que viene a ser el tipo de cambio
El proceso de clculo para llegar a la respuesta queda definido de la
siguiente manera:
Euros = Soles / 5.40
Finalmente la salida identificada es la cantidad de euros
correspondientes al tipo de cambio dado.
Codificando en Java.
package cambioeuro;
import javax.swing.JOptionPane;
public class Main {
public static void main(String[] args) {
int soles;
double euro;
soles=Integer.parseInt(JOptionPane.showInputDialog("Ingresa la cantidad
de soles"));
euro= euro=soles/5.40;
salida(soles,euro);
}
public static void salida(int soles, double euro)
{
JOptionPane.showMessageDialog(null,"El cambio a euros de S/."+ soles+" es:
E/." + euro );
}
}
Nuestro reto es desarrollar el siguiente problema y llevarlo a Pseudocdigo y
cdigo Java:
Realizar un programa que permita calcular el tipo de cambio de un monto
ingresado en soles a dlares (TC S/.2.80).
f) Presentar avances y ejecucin de cada uno de los ejercicios al docente o
jefe de prctica encargado para la calificacin correspondiente.

g) Guardar la carpeta de sus archivos a sus memorias.


h) Retirarse del laboratorio de forma ordenada.

S-ar putea să vă placă și