Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ÍNDICE
1. INTRODUCCIÓN……………………………………………………………..5
2. OBJETIVOS …………………………………………………………………..6
2.1.Hipotesis…………………………………………………………………...6
2.2.Alcance…………………………………………………………………….6
4. METODOLOGÍA DE
INVESTIGACIÓN…………………………………………………………….8
4.1.Base Teórica……………….………………………………………………8
5. ANÁLISIS DE RESULTADOS……………………………………………..29
6. CONCLUSION……………………………………………………………....32
7. BIBLIOGRAFIA…………………………………………………………….33
3
1.INTRODUCCION
programación orientado a Objetos (POO)que nos otorga características que optimizan los
del programa.
Se demostrara la eficiencia que tiene usar las herramientas propuestas para la realización del
programa.
4
2.OBJETIVOS
Automático ya que nos permite simular en el diseño y código la realidad de las acciones y
objetos .
2.1Hipotesis
2.2Alcance
Los alcances que se deben tener en cuenta para la realización del programa son:
Que datos de validación ingresa un persona para seleccionar las transacciones con su cuenta.
Definir cuales son las transacciones que realiza una persona al usar el cajero .
3.SOLUCIÓN PROPUESTA
Hacer un programa que automatice las transacciones bancarias de Deposito y Retiro de dinero
de una cuenta. Por lo eficiente que han demostrado ser ,se usaran las siguientes herramientas:
4.METODOLOGÍA DE INVESTIGACIÓN
Para poder desarrollar el programa explicaremos la Base Teórica de los elementos que la
conformaran.
4.1Base Teórica
Java es un lenguaje de programación y una plataforma informática que fue comercializada por
primera vez en 1995 por Sun Microsystems. Java es rápido, seguro y fiable. Desde portátiles
hasta centros de datos, desde consolas para juegos hasta computadoras avanzadas, desde
teléfonos móviles hasta Internet, Java está en todas partes, si es ejecutado en una plataforma
El lenguaje de programación Java fue desarrollado originalmente por James Gosling, de Sun
de Sun Microsystems. Su sintaxis deriva en gran medida de C y C++, pero tiene menos
utilidades de bajo nivel que cualquiera de ellos. Las aplicaciones de Java son compiladas a
bytecode (clase Java), que puede ejecutarse en cualquier máquina virtual Java (JVM) sin
La decisión de usar el Lenguaje Java para desarrollar el programa es por sus siguientes
características :
5. Debería ser fácil de usar y tomar lo mejor de otros lenguajes orientados a objetos,
como C++.
La programación orientada a objetos (POO)
Es un paradigma de programación que usa objetos para crear aplicaciones. Está basada en tres
Para entender este modelo vamos a revisar 2 conceptos fundamentales: clases y objetos
Las clases
En el mundo real, normalmente tenemos muchos objetos del mismo tipo. Por ejemplo, nuestro
teléfono móvil es sólo uno de los miles que hay en el mundo. Si hablamos en términos de la
programación orientada a objetos, podemos decir que nuestro objeto móvil es una instancia de
una clase conocida como “móvil”. Los móviles tienen características (marca, modelo, sistema
8
Cuando se fabrican los móviles, los fabricantes aprovechan el hecho de que los móviles
comparten esas características comunes y construyen modelos o plantillas comunes, para que
a partir de esas se puedan crear muchos móviles del mismo modelo. A ese modelo o plantilla
le llamamos clase, y a los equipos que sacamos a partir de ella la llamamos objetos.
Esto mismo se aplica a los objetos de software, se puede tener muchos objetos del mismo tipo
y mismas características.
Definición teórica: La clase es un modelo o prototipo que define las variables y métodos
comunes a todos los objetos de cierta clase. También se puede decir que una clase es una
Por otro lado, una instancia de una clase es otra forma de llamar a un objeto. En realidad no
existe diferencia entre un objeto y una instancia. Sólo que el objeto es un término más
general, pero los objetos y las instancias son ambas representación de una clase.
Objetos
Un objeto es una instancia de una clase, una instancia es un ejemplar, un caso específico de
una clase, por ejemplo yo puedo crear varios objetos de tipo clase y cada uno es diferente, por
Como cada objeto es diferente se le conoce como instancia, entonces cuando escuches el
término “hay que instanciar “, se refiere a crear un nuevo objeto y que cada objeto es
diferente.
Los objetos tienen estado que son los atributos y comportamiento que son los métodos
9
Atributos serán cada una de las piezas o características de un objeto por ejemplo un
Métodos estos serán las acciones que es capaz de hacer el Objeto ,por ejemplo el
Encapsulamiento
Significa que sólo se debe mostrar los detalles esenciales de un objeto, mientras que los
Podemos hacer una analogía pensando en un sistema operativo Linux, en Linux si eres un
usuario root tienes todos los permisos del sistema y puedes acceder a todas la configuraciones.
Mientras que, si eres sólo un usuario, solo tendrás acceso parcial al sistema (ocultación de
información).
El encapsulamiento lo tenemos en una clase, en la que se puede ocultar o restringir los datos
private).evita que cuando instanciemos un objeto podamos acceder a ellas (por seguridad).
Herencia
Siguiendo con el ejemplo anterior del celular, un celular es un equipo con características
básicas.
10
Yo podría crear un Smartphone desde cero, pero si te das cuenta, hay cosas que en el celular y
el Smartphone son comunes y que las podría reutilizar y no volver a crear de nuevo.
Si me voy por la opción de crear un nuevo, estoy duplicando componentes y tiempo que me
lleva crearlo.
El problema anterior se soluciona utilizando la herencia, con lo que ya no crearía uno nuevo si
no que heredaría del objeto celular (reutilización) y lo que haría simplemente es añadir solo
La herencia también ayuda a la reutilización, puesto que si ya tengo algo creado lo puedo
En Java se maneja herencia simple, es decir que solo se puede heredar de una sola clase a la
vez.
Para decir que una clase hereda de otra, se utiliza la palabra reservada extends seguido de la
Polimorfismo
Este término está relacionado con la herencia. Podemos hacer una analogía con el celular, un
celular tiene la opción de llamada, tu puedes hacer una llamada y comunicarte con Pablo por
11
ejemplo, haces otra llamada y te comunicas con Ana, si te das cuenta la función es la misma
La función hacer llamada se comporta de forma diferente para cada número marcado, que este
En Java un método con el mismo nombre puede comportarse de forma diferente de acuerdo al
objeto recibido. El compilador en tiempo de ejecución detecta que forma tomar de acuerdo al
Un aspecto importante es tener claro la visibilidad que tendrán de los atributos y método , por
Hemos observado que, por lo general los atributos deben ser private, y que los métodos
invocados por los clientes de una clase dada deben ser public. Los métodos que se llaman sólo
por otros métodos de la clase como “métodos utilitarios” deben ser private
Además las clases fueron instanciadas múltiples veces, porque hay varias relaciones entre
También se usara la Herencia ,por que nos topamos con el problema de representar una
transacción financiera en el programa. En vez de crear una clase para representar a todos los
Deposito) para representar las transacciones que puede realizar el Cajero Automático.
transacción. Cada clase contiene la operación ejecutar, que el Cajero invoca para realizar la
transacción. Es evidente que Retiro y Deposito representan tipos de transacciones. Por lo que
el uso de la herencia para factorizar las características comunes parece apropiado para diseñar
estas clases.
Colocamos la funcionalidad común en una superclase, Transacción, que las clases Retiro y
Deposito extienden.
Este enfoque también facilita la extensibilidad del sistema. Si deseamos crear un nuevo
tipo de transacción (por ejemplo, Verificar saldo), sólo tenemos que crear una subclase de
Transaccion adicional que sobrescriba el método ejecutar con una versión apropiada para
ejecutar el nuevo tipo de transacción. Sólo tendríamos que realizar pequeñas modificaciones
13
al código del sistema, para permitir que los usuarios seleccionen el nuevo tipo de transacción
La clase Transaccion será abstracta , en este tipo de clases sólo se declara los atributos
La clase Transaccion define el concepto de lo que significa ser una transacción que tiene un
Tal vez usted se pregunte por qué incluir el método abstract ejecutar en la clase Transaccion,
que las otras clases puedan invocarla mediante el polimorfismo a la versión sobrescrita
Agregamos comentarios a los códigos, explicando que características del Lenguaje Orientado
a Objetos se utilizaron.
Se realizaron 9 Clases :
Teclado
Pantalla
Cliente
Cuenta
Transacción
Retiro
Deposito
Cajero
Proyecto_Final
15
CLASE TECLADO
16
CLASE PANTALLA
17
CLASE CLIENTE
18
CLASE CUENTA
21
22
CLASE TRANSACCION
23
CLASE RETIRO
24
CLASE DEPOSITO
25
CLASE CAJERO
26
CLASE PROYECTO_FINAL(MAIN)
5.ANÁLISIS DE RESULTADOS
30
Fueron creados objetos con los datos necesarios para hacer las pruebas(como fue mostrado en
el anterior capitulo)
2.Se Valida si los datos ingresados son incorrectos, se informa y solicita nuevamente el
ingreso.
31
3.Cuando se ingresan los datos correctos, el programa mostrara las opciones de las
transacciones:
4.Se escoge la opción Retiro y se valida el monto a retirar según el saldo disponible.
6.CONCLUSIONES
La programación orientada a objetos representa y simula las acciones y objetos reales para
Las características de la Orientación a Objetos brindan un entorno donde los recursos son
7.BIBLIOGRAFÍA
https://es.wikipedia.org/wiki/Java_(lenguaje_de_programaci%C3%B3n)
https://asociacionaepi.es/programacion-orientada-a-objetos-en-
java/#:~:text=Empresas-,Programaci%C3%B3n%20Orientada%20a%20Objetos
%20en%20Java,de%20la%20d%C3%A9cada%20de%201990.
https://www.ecodeup.com/4-elementos-claves-para-entender-la-programacion-
orientada-objetos-en-java/
https://es.scribd.com/document/271202349/Caso-de-Estudio-Parte-2