0% encontró este documento útil (0 votos)
4 vistas39 páginas

Informe de Proyecto: Madame Management

El informe detalla un proyecto de prácticas industriales titulado 'Madame Management', una aplicación offline diseñada para gestionar detalles de empleados y clientes. Los estudiantes aprendieron sobre el desarrollo en Core Java y MS SQL Server durante su formación en INFOWIZ. El documento incluye agradecimientos, descripción del proyecto, análisis de requisitos y una introducción a Java.

Traducido por

ScribdTranslations
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
4 vistas39 páginas

Informe de Proyecto: Madame Management

El informe detalla un proyecto de prácticas industriales titulado 'Madame Management', una aplicación offline diseñada para gestionar detalles de empleados y clientes. Los estudiantes aprendieron sobre el desarrollo en Core Java y MS SQL Server durante su formación en INFOWIZ. El documento incluye agradecimientos, descripción del proyecto, análisis de requisitos y una introducción a Java.

Traducido por

ScribdTranslations
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Números de matrícula:-90080302449, 90080302458, 90080302476

Informe del proyecto de prácticas industriales de seis meses

En
Señora Gestión

Colegio Baba Farid de Ingeniería y Tecnología


Bathinda

Enviado a:
Enviado por:
Jaspreet Kaur(90080302449)
Lovleen Gupta(90080302458)
Samandeep Kaur(90080302476)

[Escribe texto] Page 1


Números de registro: -90080302449, 90080302458, 90080302476,

RECONOCIMIENTO

Me gustaría agradecer al Sr. MJS Dhillon (Director de INFOWIZ) por proporcionarme esta oportunidad.
recibir capacitación en tecnología Core Java/Android bajo su guía.

Me gustaría agradecer humildemente y sinceramente a la Sra. Jenifa Chauhan, (Supervisora y


Gerente de Departamento) y el Sr. Ankur (Entrenador), INFOWIZ por su generosa orientación,
sugerencias valiosas y ánimo que se me dieron en diferentes etapas.

Por último, pero no menos importante, expreso mi más sincero agradecimiento a Dios todopoderoso, a mis padres por su amor.

y bendiciones por tener una oportunidad tan maravillosa

[Tipo texto] Page 2


Números de matrícula: -90080302449, 90080302458, 90080302476,

RESUMEN

Este es un informe de proyecto sobre "gestión de madame" Durante la elaboración/desarrollo de esto

proyecto exploramos nuevas ideas y funcionalidades detrás del funcionamiento de un bloc de notas.

Hemos aprendido mucho durante este proyecto y nos gustó la mejora en nuestras habilidades de prueba y profundización.

concepto relacionado con este tipo de proyectos.

Nuestro proyecto es 'Madame Management'. Esta es una aplicación offline que ayuda a las personas a dar.
la facilidad para gestionar los detalles de los empleados, los detalles de los clientes, los descuentos y otros

servicios proporcionados a los clientes.

[Escribir texto] Page 3


Números de matrícula:-90080302449, 90080302458, 90080302476

PREÁMBULO

El aprendizaje proviene de la práctica. Para aprender algo, uno tiene que pasar por condiciones prácticas.

Reconociendo este hecho, la Universidad ha hecho esencial que los estudiantes de [Link] se sometan a
Entrenamiento industrial durante seis semanas. Durante este período, el estudiante aprende sobre el funcionamiento de

la organización y el entorno empresarial actual. Además, esta formación ayuda al estudiante a cómo
implementar el conocimiento teórico en la vida práctica, en nuestro día a día. Este informe del proyecto
fue preparado durante el período de entrenamiento en los meses de mayo a junio.

Durante este período, se hizo un esfuerzo por entender a "Madame Management" y terminar el
trabajo de proyecto asignado a nosotros. Este informe hace especial hincapié en el trabajo operativo, tareas y
proyectos realizados durante el período de formación.

[Escriba texto] Page 4


Nº de inscripción: -90080302449, 90080302458, 90080302476

LISTA DE CONTENIDOS

[Link]. CONTENIDOS NÚMERO DE PÁGINA Comentarios


1. Página Principal 1
2. Reconocimiento 2
3. Resumen 3
4. Prefacio 4
5. Lista de contenidos 5
6. Descripción de la organización 6
7. Descripción del proyecto 7
8. Componentes de Proyectos 8
9. Análisis de Requisitos 9
10. Historia de Java 10-11
11. Conceptos de Java 31-12
12. Diseño de Sistemas 32-37
1. Diagramas de Flujo de Datos
2. Capturas de pantalla

[Escribe texto] Page 5


Roll No.s:-90080302449, 90080302458, 90080302476,

PERFIL DE LA EMPRESA

INFOWIZ es una organización joven de 6 años con certificación ISO que ha estado trabajando en el campo de
IT, Sistemas Embebidos y ha estado proporcionando a sus clientes una calidad excepcional en Diseño Web.
Servicios de desarrollo y SEO. Nuestros clientes varían desde pequeñas, medianas hasta grandes empresas.
individuos. También proporcionamos las empresas offshore de EE. UU., Reino Unido, Francia, Irlanda, Canadá y Australia

con servicios web y de SEO de calidad y a tiempo.

INFOWIZ es una organización que se establece en el campo del desarrollo web (PHP &
.NET, JAVA (básico y avanzado), aplicaciones para iPhone y Android, embebido
sistemas (AVR, PIC y ARM), y ROBÓTICA.

INFOWIZ no se jacta de ser la mejor empresa de desarrollo, pero disfruta de una buena reputación.
posición entre las principales empresas de Desarrollo Web y Electrónica debido a nuestra entrega oportuna
y trabajo de calidad. Nuestro equipo de profesionales capacitados se asegura de que el producto se desarrolle como

según las necesidades del cliente y también manteniendo al cliente informado sobre el desarrollo de su
proyecto de vez en cuando. No solo enfatizamos en formular una solución atractiva para nuestro
clientes, pero también creen en proporcionar una solución viable. INFOWIZ ofrece búsqueda basada en investigación.

Productos de marketing de motores que ayudan a lograr una mayor comprensión del negocio en línea del cliente. Nuestro
La rama de Investigación y Desarrollo ofrece herramientas de SEO para profesionales de SEM.

[Escribe texto] Page 6


Números de matrícula: -90080302449, 90080302458, 90080302476

DESCRIPCIÓN DEL PROYECTO

Esto es un Madame Management proyecto. En este proyecto estamos mostrando un Showroom


Funcionalidad de gestión. En este proyecto tenemos un panel: Panel de administración. El administrador puede insertar

actualizar o eliminar clientes de los detalles del cliente y también de la base de datos de detalles del personal.

Hicimos esta aplicación en Core Java y mi base de datos es MS SQL Server 2005. Nosotros
tenemos nuestra base de datos en la carpeta de la aplicación App data. Para ejecutar esta aplicación solo adjunta esto.

base de datos en tu máquina y cambiar la cadena de conexión.

Ahora, cuando ejecutes la aplicación por primera vez, se mostrará la página de inicio de sesión. Si tú

ya te has registrado en el sitio, entonces ingresa tu nombre de usuario y contraseña y la aplicación


será redirigido a su página de inicio de sesión.

[Escriba texto] Page 7


Roll No.s:-90080302449, 90080302458, 90080302476,

COMPONENTES DEL PROYECTO

1. Cómo iniciar sesión

En este módulo, el usuario ingresará su nombre de usuario y contraseña para ir a la página de inicio.

2. Página de Inicio.

Detalles del cliente: Este botón se refiere a la página de detalles del cliente que son
registrado.

Información del Personal: Este botón se refiere a la página de información general del personal de
madame showroom.

Inventory:This button refers to the page of details of products available and


requerido.

Bill:This button refers to the page which contains discounts and products
información de los productos que el cliente requiere.

[Escribe el texto] Page 8


Números de matrícula:-90080302449, 90080302458, 90080302476,

ANÁLISIS DE REQUISITOS

Requisitos de hardware
Number Description
1 Sistema Informático

2 1GBRAM

Requisitos de Software
Número Descripción
1 Windows XP–7, cualquier sistema operativo que soporte NetBeans y

MsSQL
2 NetBeans
3 MsSql Server 2005

[Escribe texto] Page 9


Roll No.s:-90080302449, 90080302458, 90080302476,

INTRODUCCIÓN A LAS HERRAMIENTAS

FRONT-END/BACK-END

Front-End: NetBeans

Back-End: MS SQL SERVER 2005

Front End:

Net Beans–Net Beans es un entorno de desarrollo integrado(IDE) deSol


Microsistemas. Se utiliza para desarrollarconsola de bucleuninterfaz gráfica de usuarioaplicacionesjunto
conWindows Formsaplicacionessitios webaplicaciones web,yservicios web.
NetBeans soporta diferenteslenguajes de programaciónmediante servicios lingüísticos,
que permiten al editor de código y al depurador soportar (en diferentes grados) casi cualquier
lenguaje de programación, siempre que exista un servicio específico para el lenguaje. Lenguajes integrados

incluir C/C++ .

Backend:
SQLSERVER–Microsoft SQL Server es unservidor de base de datos relacionaldesarrollado por
Microsoftes un producto de software cuya función principal es almacenar y recuperar datos como
solicitado por otras aplicaciones de software, ya sean las de la misma computadora o las
ejecutándose en otro ordenador a través de una red (incluido Internet). Hay al menos
una docena de ediciones diferentes de Microsoft SQL Server dirigidas a diferentes audiencias y para
cargas de trabajo diferentes (que van desde pequeñas aplicaciones que almacenan y recuperan datos en el
el mismo ordenador, a millones de usuarios y ordenadores que acceden a enormes cantidades de datos de

el Internet al mismo tiempo).

[Escriba el texto] Page 10


Números de matrícula: -90080302449, 90080302458, 90080302476

HISTORIA

The Java platform and language began as an internal project aSun Microsystemsen
Diciembre de 1990, proporcionando una alternativa al C++ /Clenguajes de programación. Ingeniero
Patrick Naughtonhabía llegado a estar cada vez más frustrado con el estado del C++ y C de Sun
interfaces de programación de aplicaciones(APIs) y herramientas. Mientras se considera la posibilidad de moverse aNeXT,
A Naughton se le ofreció la oportunidad de trabajar en nueva tecnología y así nació el Proyecto Stealth.

started.

El Proyecto Stealth fue pronto renombrado como el Proyecto Verdecon James Goslingy
Mike Sheridan se une a Naughton. Junto con otros ingenieros, comenzaron a trabajar en un pequeño
oficina enSand Hill RoadenMenlo Park, [Link] intentando desarrollar un nuevo
tecnología para programar electrodomésticos inteligentes de próxima generación, que Sun esperaba que fuera un gran

nueva oportunidad.

El equipo inicialmente consideró usar C++, pero se rechazó por varias razones.
Porque estaban desarrollando unsistema embebidocon recursos limitados, decidieron que
C++ necesitaba demasiada memoria y su complejidad conducía a errores de desarrollador. El lenguaje's
falta derecolección de basurasignificaba que los programadores tenían que gestionar manualmente la memoria del sistema, un
tarea desafiante y propensa a errores. El equipo también se sintió preocupado por la falta de portabilidad del lenguaje.

instalaciones para la seguridad,programación distribuidayhilosFinalmente, querían una plataforma


que podría ser fácilmente adaptado a todo tipo de dispositivos.

Bill Joyhabía imaginado un nuevo idioma combinandoMesay C. En un artículo


llamado Además, propuso a Sun que sus ingenieros deberían producir unorientado a objetos
environment based on C++. Initially, Gosling attempted to modify and extend C++ (that he
conocido como "C++ ++ --") pero pronto abandonó eso a favor de crear un nuevo lenguaje, que
lo llamó Roble, después del árbol que estaba justo afuera de su oficina.

[Escribe texto] Page 11


Números de inscripción:-90080302449, 90080302458, 90080302476,

Para el verano de 1992, pudieron demostrar partes de la nueva plataforma


incluyendo el VerdeSOel lenguaje Oak, las bibliotecas y el hardware. Su primer intento,
demostrado el 3 de septiembre de 1992, centrado en construir unasistente digital personal(PDA)
dispositivo named Star7 que tenía una interfaz gráfica y un agente inteligente llamado "Duke" para ayudar al
usuario.

En noviembre de ese año, el Proyecto Verde se escindió para convertirse en firstperson, un


wholly owned subsidiary of Sun Microsystems, and the team relocated a Palo Alto, California.
El equipo de primera persona estaba interesado en construir dispositivos altamente interactivos, y cuandoHora

Warneremitido unsolicitud de propuesta(RFP) para undecodificadorfirstperson cambió su objetivo y


respondió con una propuesta para una plataforma de decodificador. Sin embargo,el cablela industria sentía que su
la plataforma dio demasiado control al usuario y la primera persona perdió su oferta to [Link] adicional
tratar conLa compañía 3DOpara un decodificador también fracasó en materializarse. Incapaz de generar
el interés dentro de la industria de la televisión, la empresa fue reintegrada en Sun.

[Tipo texto] Page 12


Números de matrícula: -90080302449, 90080302458, 90080302476

INTRODUCCIÓN A JAVA

Java es un lenguaje de programación orientado a objetos con una aplicación integrada.


interfaz de programación (API) que puede manejar gráficos e interfaces de usuario y que puede ser utilizada

crearaplicacioneso applets. Debido a su rica colección de API, similar a Macintosh y


Windows, y su independencia de plataforma, Java también se puede considerar como una plataforma en sí misma. Java
también tiene bibliotecas estándar para hacer matemáticas.

Gran parte de la sintaxis de Java es la misma que la de C y C++. Una diferencia importante es que

Java no tiene punteros. Sin embargo, la mayor diferencia es que debes escribir objeto
código orientado a objetos en Java. Las piezas de código procedimentales solo se pueden incrustar en objetos. En el

a continuación asumimos que el lector tiene algo de familiaridad con un lenguaje de programación. En
en particular, cierta familiaridad con la sintaxis de C/C++ es útil.

En Java, distinguimos entre aplicaciones, que son programas que realizan el


las mismas funciones que las escritas en otros lenguajes de programación, y applets, que son
programas que se pueden incrustar en una página web y acceder a través de Internet. Nuestro enfoque inicial
se centrará en la escritura de aplicaciones. Cuando se compila un programa, se produce un código de bytes que puede ser

leído y ejecutado por cualquier plataforma que pueda ejecutar Java.

[Tipo de texto] Page 13


Números de matrícula:-90080302449, 90080302458, 90080302476

Características de Java

Java is simple, easy to design , easy to write, and therefore easy to compile, debug, and learn
que cualquier otro lenguaje de programación.
Java es orientado a objetos, que se utiliza para construir programas modulares y código reutilizable en otros.

aplicación.
Java es independiente de la plataforma y flexible por naturaleza. La característica más significativa de Java es

ejecutar un programa fácilmente de un sistema informático a otro.


Java funciona en un entorno distribuido. Está diseñado para trabajar en computación distribuida, Cualquiera
Los programas de red en Java son lo mismo que enviar y recibir datos de y hacia un archivo.
Java es seguro. El lenguaje Java, el compilador, el intérprete y el entorno de ejecución son
asequible.
Java es robusto. Robusto significa fiabilidad. Java hace hincapié en la verificación de posibles errores, ya que

Los compiladores de Java pueden detectar muchos problemas de error en el programa durante la ejecución de

código del programa respectivo.

Java supports multithreaded. Multithreaded is the path of execution for a program to perform
varias tareas simultáneamente dentro de un programa. El java viene con el concepto de
Programa Multihilo. En otros lenguajes, los procedimientos específicos del sistema operativo tienen que ser

llamado para trabajar en multihilo.


Java sigue completamente la programación orientada a objetos.

[Escriba texto] Page 14


Roll No.s:-90080302449, 90080302458, 90080302476,

Los Tipos Simples

Java define ocho tipos de datos simples (o elementales): byte, short, int, long, char, float,
doble y booleano.

These can be put in four groups:-

1) Enteros:

Este grupo incluye byte, short, int y long, que son para valores enteros con signo.
números. Números de punto flotante Este grupo incluye float y double, que representan
números con precisión fraccionaria. Todos estos son valores con signo, positivos y negativos. Java
no admite enteros sin signo y solo positivos. El ancho de un tipo entero no debe ser
pensado como la cantidad de almacenamiento que consume, sino más bien como el comportamiento que define para

variables y expresiones de ese tipo.

The Java run-time environment is free to use whatever size it wants, as long as the
los tipos se comportan como los declaraste. De hecho, al menos una implementación almacena bytes y shorts
como valores de 32 bits (en lugar de 8 y 16 bits) para mejorar el rendimiento, porque esa es el tamaño de la palabra
de la mayoría de las computadoras actualmente en uso.

El ancho y los rangos de estos tipos de enteros varían ampliamente, como se muestra en esta tabla:

a) Byte
El tipo de entero más pequeño es byte. Este es un tipo con signo de 8 bits que tiene un rango de –128

a 127. Las variables de tipo byte son especialmente útiles cuando trabajas con un flujo de datos
de una red o archivo. También son útiles cuando trabajas con datos binarios en bruto que pueden
no son directamente compatibles con los otros tipos incorporados de Java. Las variables de byte se declaran mediante el uso de

thebytekeyword. Por ejemplo, lo siguiente declara dos variables de dos bytes llamadas b y c:

byte b, c;

[Escribe texto] Page 15


Números de matrícula:-90080302449, 90080302458, 90080302476,

b) Corto

El tipo Short es un tipo firmado de 16 bits. Tiene un rango de -32,768 a 32,767. Probablemente es el
tipo de Java menos utilizado, ya que se define como teniendo su byte alto primero (llamado formato big-endian).
Este tipo es principalmente aplicable a computadoras de 16 bits, que se están volviendo cada vez más escasas.

Aquí hay algunos ejemplos de declaraciones de variables cortas:

os corto;
ot corto

c) Int

El tipo de entero más comúnmente utilizado es int. Es un tipo firmado de 32 bits que tiene un rango.
el rango es de –2,147,483,648 a 2,147,483,647. Cada vez que tenga una expresión entera
involvingbytes,shorts,ints, and literal numbers, the entire expression ispromotedtointbefore
el cálculo está hecho.

largo

Long es un tipo firmado de 64 bits y es útil para aquellas ocasiones en las que un tipo int no es lo suficientemente grande.

suficiente para mantener el valor deseado. El rango de alongis es bastante amplio. Esto lo hace útil cuando
Se necesitan números grandes y enteros.

.
2) Tipos de punto flotante

Los números de punto flotante, también conocidos como números reales, se utilizan al evaluar expresiones.

que requieren precisión fraccionaria. Hay dos tipos de números de punto flotante, float y double,
que representan números de precisión simple y doble. Su ancho y rangos se muestran aquí:

[Escriba texto] Page 16


Roll No.s:-90080302449, 90080302458, 90080302476,

a) Flotar

El tipo float especifica un valor de precisión simple que utiliza 32 bits de almacenamiento. Simple

la precisión es más rápida en algunos procesadores y ocupa la mitad de espacio que la doble precisión,

pero se volverá impreciso cuando los valores sean muy grandes o muy pequeños. Las variables de
typefloatare útil cuando necesitas un componente fraccional, pero no requieres un gran grado
de precisión. Por ejemplo, float puede ser útil al representar dólares y centavos. Aquí hay
algunas declaraciones de variables flotantes de ejemplo: float hightemp, lowtemp.

b) Doble

La doble precisión, como se indica con la palabra clave double, utiliza 64 bits para almacenar un valor. Doble

la precisión es en realidad más rápida que la precisión simple en algunos procesadores modernos que han sido

optimizado para cálculos matemáticos de alta velocidad. Todas las funciones matemáticas trascendentales, como

asin( ), cos( ), y sqrt( ), devuelven valores dobles. Cuando necesitas mantener la precisión sobre
muchos cálculos iterativos, o están manipulando números de gran valor, el doble es lo mejor
elección. Aquí hay un programa corto que utiliza variables dobles para calcular el área de un círculo:

Calcular el área de un círculo.


clase Área {
public static void main(String args[]) {
doble pi, r, a;
r = 10.8; // radio del círculo
pi = 3.1416; // pi, aproximadamente
a = pi * r * r; // calcular área
[Link]("El área del círculo es " + a);}}

3)Personajes
Este grupo incluye char, que representa símbolos en un conjunto de caracteres, como letras y
números. En Java, el tipo de dato utilizado para almacenar caracteres es char. Java utiliza Unicode para representar

[Link] define un conjunto de caracteres completamente internacional que puede representar todos los

caracteres encontrados en todos los idiomas humanos. En Javacharis, un tipo de 16 bits. El rango de acharis es 0

a 65,536. No hay caracteres negativos. El conjunto de caracteres estándar conocido como ASCII todavía

[Escribe texto] Page 17


Números de inscripción:-90080302449, 90080302458, 90080302476

varía de 0 a 127 como siempre, y el conjunto de caracteres extendido de 8 bits, ISO-Latin-1, varía de 0
a 255.

Aquí hay un programa que demuestra variables de tipo char:

// Demostrar el tipo de dato char.


clase CharDemo
{
public static void main(String args[])
{
char ch1, ch2;
ch1 = 88; // code for X
ch2 = 'Y';
[Link]("ch1 y ch2: ");
[Link](ch1 + " " + ch2);
}
}

Este programa muestra la siguiente salida:


ch1 and ch2: X Y

Observe que h1 tiene asignado el valor 88, que es el valor ASCII (y Unicode) que
corresponde a la letra X.

A pesar de que los caracteres no son enteros, en muchos casos puedes operar con ellos como si lo fueran.

Eran enteros. Esto te permite sumar dos caracteres, o incrementar el valor.


de una variable de carácter.

[Escribe el texto] Page 18


Roll No.s:-90080302449, 90080302458, 90080302476,

4) Boolean

Este grupo incluye booleano, que es un tipo especial para representar valores verdadero/falso.
Puedes usar estos tipos como -is, o para construir arreglos o tus propios tipos de clase. Así, ellos
forma la base para todos los demás tipos de datos que puedes crear. Java tiene un tipo simple, llamado
booleano, para valores lógicos. Solo puede tener uno de dos posibles valores, verdadero o falso. Esto
is the type returned by all relational operators, such asa < [Link] also the type
requeridos por las expresiones condicionales que gobiernan las declaraciones de control como if y for.

Aquí hay un programa que demuestra el tipo booleano:


// Demostrar valores booleanos.
clase BoolTest
{
public static void main(String args[])
{
booleano b;
b = falso;
[Link]("b es " + b);
b = verdadero;

[Link]("b es " + b);


un valor booleano puede controlar la declaración if
si(b) [Link]("Esto se ejecuta.");
b = falso;
si(b) [Link]("Esto no se ejecuta.");
// el resultado de un operador relacional es un valor booleano
[Link]("10 > 9 es " + (10 > 9));
}
}
The output generated by this program is shown here:
b es falso
b es verdadero

Esto se ejecuta.
10 > 9 es verdadero

[Escribe texto] Page 19


Números de matrícula:-90080302449, 90080302458, 90080302476,

Hay tres cosas interesantes a notar sobre este programa. Primero, como puedes ver,
cuando un valor booleano es mostrado por println( ), se muestra "true" o "false". En segundo lugar, el

el valor de una variable booleana es suficiente, por sí solo, para controlar la declaración if. Hay
no es necesario escribir una declaración if como esta:

si(b == verdadero) ...

En tercer lugar, el resultado de un operador relacional, como <, es un valor booleano. Por eso
la expresión 10 > 9 muestra el valor "verdadero."

Conversión de tipos y casting

Si tienes experiencia previa en programación, entonces ya sabes que es bastante


es común asignar un valor de un tipo a una variable de otro tipo. Si los dos tipos son
compatible, entonces Java realizará la conversión automáticamente. Por ejemplo, siempre es
es posible asignar un valor entero a una variable larga. Sin embargo, no todos los tipos son compatibles, y

así, no todos los tipos de conversiones se permiten implícitamente. Por ejemplo, no hay ninguna conversión definida

de doble a byte. Para hacerlo, debes usar un cast, que realiza una conversión explícita
entre tipos incompatibles. Veamos tanto las conversiones de tipo automáticas como el casting.

Conversiones Automáticas de Java


Cuando un tipo de dato se asigna a otra variable de tipo, se realizará una conversión automática de tipo.
tendrá lugar si se cumplen las siguientes dos condiciones:

Los dos tipos son compatibles.


El tipo de destino es más grande que el tipo de origen.

Cuando se cumplen estas dos condiciones, se produce una conversión ampliada. Para
ejemplo, el tipo de entero siempre es lo suficientemente grande como para contener todos los valores de byte válidos, por lo que no es necesario explícitamente

se requiere una declaración de conversión. Para conversiones de ampliación, los tipos numéricos, incluidos los enteros

y los tipos de punto flotante son compatibles entre sí. Sin embargo, los tipos numéricos son
no compatible con char o Boolean. Además, char y boolean no son compatibles con
el uno al otro.

[Escribir texto] Page 20


Números de matrícula: -90080302449, 90080302458, 90080302476

Como se mencionó anteriormente, Java también realiza una conversión de tipo automática al almacenar un

constante entera literal en variables de tipo byte, short o long.

Casting tipos incompatibles

Para crear una conversión entre dos tipos incompatibles, debes usar un casting. Un casting es
simplemente una conversión de tipo explícita.

Tiene esta forma general:


(tipo-de-destino)[Link]í, tipos-de-destino especifica el tipo deseado al que convertir el valor especificado.

Por ejemplo, el siguiente fragmento convierte un int a un byte. Si el valor del entero es mayor que el
el rango de un byte se reducirá al rango de un byte módulo.
int a;
byte b;
// ...
b = (byte) a;

Un tipo diferente de conversión ocurrirá cuando se asigne un valor de punto flotante a un


tipo entero: truncamiento. Como saben, los enteros no tienen componentes fraccionarios. Así que, cuando
se asigna un valor de punto flotante a un tipo entero, la fracción
el componente se pierde. Por ejemplo, si se asigna el valor 1.23 a un entero, el valor resultante
simplemente será 1. El 0.23 habrá sido truncado. Por supuesto, si el tamaño del número entero
el componente es demasiado grande para caber en el tipo entero de destino, entonces ese valor se reducirá módulo
el rango del tipo de objetivo.

El siguiente programa demuestra algunas conversiones de tipo que requieren conversiones explícitas:

// Demostrar conversiones.

clase Conversión {
public static void main(String args []) {
byte b;

[Escribe texto] Page 21


Núm. de matrícula:-90080302449, 90080302458, 90080302476,

int i = 257;
doble d = 323.142;
[Link]("\nConversión de int a byte.");
b = (byte) i;
[Link]("i y b " + i + " " + b);
[Link]("\\nConversion of double to int.");
i = (int) d;
[Link]("d and i " + d + " " + i);
[Link]("\nConversión de double a byte.");
b = (byte) d;
[Link]("d y b " + d + " " + b);
}
}
Este programa genera la siguiente salida:
Conversión de int a byte.
yo y b 257 1
Conversión de doble a entero.
Guía del Estudiante de Java Básico Página 19 de

95
d e i 323.142 323
Conversión de doble a byte.
d y b 323.142 67

[Escribe texto] Page 22


Roll No.s:-90080302449, 90080302458, 90080302476,

Herencia en Java

Inheritance is a compile-time mechanism in Java that allows you to extend a class (called
thebase classor super class) with another class (called thederived classorsubclass). In Java,
la herencia se utiliza para dos propósitos:

1. herencia de clases - crear una nueva clase como una extensión de otra clase, principalmente para el

el propósito de la reutilización del código. Es decir, la clase derivada hereda los métodos públicos y los datos públicos de

la clase base. Java solo permite que una clase tenga una única clase base inmediata, es decir, una clase única

herencia.

2. herencia de interfaz - crea una nueva clase para implementar los métodos definidos como parte de un

interfaz con el propósito de subtipado. Es una clase que implementa una interfaz ―cumple
a‖ (o está restringido por el tipo de) la interfaz. Java soporta la herencia múltiple de interfaces.
En Java, estos dos tipos de herencia se hacen distintos utilizando diferentes sintaxis del lenguaje. Para
la herencia de clase, Java utiliza la palabra clave extends y para la herencia de interfaz Java utiliza el
implementos de palabras clave

clase pública nombre-de-clase-derivada extiende nombre-de-clase-base

{
// los métodos de la clase derivada extienden y posiblemente anulan

los de la clase base


}
clase pública nombre-de-clase implementa nombre-de-interfaz

{
// la clase proporciona una implementación para los métodos
// según lo especificado por la interfaz

[Escribe el texto] Page 23


Números de registro: -90080302449, 90080302458, 90080302476

Herencia de clases

Este mecanismo de derivar una nueva clase de una clase existente/vieja se llama "herencia". La vieja
la clase se conoce como clase "base", clase "superior" o clase "padre"; y la nueva clase se conoce como
clase "sub", clase "derivada" o clase "hija". La herencia permite a las subclases heredar todo
propiedades (variables y métodos) de sus clases padre.

Las diferentes formas de herencia son:

Herencia simple (solo una superclase)


Herencia múltiple (varias superclases)
Herencia jerárquica (una superclase, muchas subclases)
Herencia multinivel (derivada de una clase derivada)
Herencia híbrida (más de dos tipos)
Herencia de múltiples caminos (herencia de algunas propiedades de dos fuentes).

Clases Base Abstractas

Una clase abstracta es una clase que deja una o más implementaciones de métodos no especificadas.
declarando uno o más métodos abstractos. Un método abstracto no tiene cuerpo (es decir, no
implementación). Se requiere que una subclase sobrescriba el método abstracto y proporcione un
implementación. Por lo tanto, una clase abstracta está incompleta y no se puede instanciar, pero
puede usarse como una clase base.
clase abstracta pública nombre-de-clase-base-abstrakta

{
// la clase abstracta tiene al menos un método abstracto
tipo-de-retorno-abstracto nombre-del-método-abstracto ( parámetros-formales );

... // otros métodos abstractos, métodos de objeto, métodos de clase


}

[Type text] Page 24


Números de matrícula: -90080302449, 90080302458, 90080302476

clase pública nombre-clase-derivada extiende nombre-clase-base-abstrcta {


tipo-de-retorno-publico nombre-del-método-abstacto (parametros-formales) { lista-de-instrucciones; }

... // otras implementaciones de métodos


}
Sería un error intentar instanciar un objeto de un tipo abstracto:
abstract-class-name obj =newabstract-class-name(); // ¡ERROR!
Es decir, el operador new es inválido cuando se aplica a una clase abstracta.

Constructores en Java

Todo sobre la asignación de recursos antes de que un objeto sea utilizado y la liberación de recursos cuando un objeto es
hecho.
Los constructores están bien hechos en Java y tienen mucho sentido.

Default Values

• En la asignación de objetos

Java asigna a cada miembro var su valor predeterminado


•Si quieres, puedes dar una inicialización explícita
clase Foo
{
private int a = 12;
private IDoubleVector b = new DenseDoubVector(2, 0);
private double c;
...
}

Inicializado en orden de declaración

—Y se inicializa antes de que se ejecute cualquier código del constructor

—Nota: los estáticos solo se inicializan una vez, en la primera creación del objeto de ese tipo

[Escriba texto] Page 25


No. de rollo:-90080302449, 90080302458, 90080302476,

Proporcionando Código de Inicialización

Puede tener un bloque de código que siempre se ejecuta antes del constructor

clase Foo
{
int a;
{
[Link] ("Este código se ejecutará antes del") ;

[Link] (―constructor.‖);
}
Foo () {
[Link] ("Aquí está el constructor.");
}

}
Foo bar = nuevo Foo();
¿Qué hace esto?
•Nota: puede tener un bloque etiquetado como ―estático‖... ¿qué sucede entonces?

Llamando a los constructores de la superclase

El constructor de la superclase por defecto (sin parámetros) se llama automáticamente

—Invocado antes de que se haga cualquier otra cosa a la subclase

Esto puede causar una cadena de invocaciones, hasta volver a «Objeto».


— Si quieres otro constructor, usa la llamada a ―super‖
Debe ser la primera declaración en un constructor nombrado
clase Foo extiende Bar {
{
[Link] ("¡Hola mamá!");
}
Foo ()
{
super (2);

[Escribe texto] Page 26


Números de matrícula:-90080302449, 90080302458, 90080302476,

[Link] (―Aquí está el constructor.‖);


}
} ...
Foo bar = nuevo Foo();

Interface
Define una forma estándar y pública de especificar el comportamiento de las clases
Define un contrato
●Todos los métodos de una interfaz son métodos abstractos

Define las firmas de un conjunto de métodos, sin el cuerpo (implementación de los métodos)
●A concrete class must implement the interface (all the abstract methods of the Interface)
●Permite a las clases, independientemente de su ubicación en la jerarquía de clases, implementar comúnmente

comportamientos.

¿Por qué Interfaces?

Para revelar la interfaz de programación de un objeto (la funcionalidad del objeto) sin revelar su
implementación
Este es el concepto de encapsulación.
La implementación puede cambiar sin afectar al llamador de la interfaz.
El llamador no necesita la implementación en el tiempo de compilación
Solo necesita la interfaz en el tiempo de compilación
Durante la ejecución, la instancia de objeto real se asocia con el tipo de interfaz.

[Escriba texto] Page 27


Números de matrícula:-90080302449, 90080302458, 90080302476,

Multi-Threading in java
Ejecutando un programa con múltiples hilos en paralelo
Forma especial de multiprocesamiento

Hilo
secuencia de instrucciones ejecutadas de manera secuencial

Comparte el espacio de direcciones con otros hilos

Tiene su propio contexto de ejecución

Múltiples hilos en el proceso ejecutan el mismo programa, también conocido como 'proceso ligero'.

Captura la estructura lógica del problema


Puede tener componentes interactivos concurrentes
Se puede manejar cada componente usando un hilo separado
Simplifica la programación para el problema

Mejor utilizar los recursos de hardware

Cuando un hilo se retrasa, calcula otros hilos


Dado hardware adicional, computar hilos en paralelo
Reducir el tiempo de ejecución general

Creando hilos en Java


Tienes que especificar el trabajo que quieres que el hilo haga. Define una clase que implemente el
Interfaz Runnable

interfaz pública Runnable


{
public void run();
}
Coloca el trabajo en el método run. Crea una instancia de la clase worker y crea un hilo para ejecutarlo.
o entregar la instancia del trabajador a un ejecutor

[Escribe texto] Page 28


Roll No.s:-90080302449, 90080302458, 90080302476,

Clase Thread

clase pública Hilo


{
public Thread(Runnable R); // Hilo⇒ [Link]()
public Thread(Runnable R, String nombre);
public void comenzar(); // iniciar la ejecución del hilo

...
}

Creando hilos en Java

Interfaz Runnable

Crea un objeto que implemente la interfaz Runnable. Pásalo a un objeto Thread a través del constructor de Thread.

Example
public class MyT implements Runnable
{
public void run() {
... // trabajo para hilo
}
}
Thread t = new Thread(new MyT()); // crear hilo
[Link](); // empezar a ejecutar el hilo

… // hilo ejecutándose en paralelo

[Escriba texto] Page 29


Roll No.s:-90080302449, 90080302458, 90080302476,

Alternativa (No Recomendada)

Extender directamente la clase Thread

public class MyT extends Thread


{
public void run()
{
… // trabajar para hilo
}
}
MyT t = new MyT(); // crear hilo
[Link](); // comenzar a ejecutar el hilo

Un hilo de Java puede estar en uno de estos estados

Nuevo: hilo asignado y esperando a iniciar()


Runnable–thread can execute
Bloqueado: hilo esperando evento (I/O, etc.)
Terminado–hilo finalizado

nuevo Nuevo Estado ejecutable

IO, Durmiente IO
p, unirse COMPLETO, DORMIDO
Terminado Estado bloqueado P EXPIRADO
estado

Transiciones entre estados causadas por

Invocando métodos en la clase Threadstart(), yield(), sleep()


Otros eventos (externos) Programador, E/S, volviendo de run()…

[Escribe texto] Page 30


Números de matrícula: -90080302449, 90080302458, 90080302476

Java swings
¿Qué es Swing?

• Una API para Interfaces de Usuario Gráficas (GUI)


• Creado para proporcionar un conjunto de componentes de interfaz gráfica de usuario más sofisticados que el Abstract

Kit de herramientas de Windows (AWT)

• Parte de las Clases Fundamentales de Java (JFC)

Componentes ligeros porque se ven consistentes en las plataformas

Tareas de la aplicación GUI:

• Llama al constructor de la superclase JFrame.


• Obtenga una referencia al objeto del panel de contenido - los objetos de la interfaz gráfica de usuario se agregan a este panel

• Establece el layoutmanager para organizar los componentes de la GUI en la ventana

• Instanciar cada componente


• Agregar cada componente al panel de contenido
• Establecer el tamaño de la ventana

• Mostrar la ventana

Componentes de Swing:

• JLabel muestra una imagen o texto de solo lectura


• JTextField cuadro de texto de una sola línea para entrada

• JTextArea cuadro de texto de múltiples líneas

• JPasswordField de una sola línea para aceptar contraseñas pero no mostrar lo que se escribe
• JButton command button
• JRadioButton alternar uno en un grupo
• JCheckBox el usuario selecciona 0, 1 o más opciones en un grupo
• JList lista de elementos para seleccionar 1 o más

• Lista desplegable JComboBox para seleccionar un ítem

[Type text] Page 31


Roll No.s:-90080302449, 90080302458, 90080302476,

Manejo de Eventos

Las interfaces gráficas son impulsadas por eventos: el usuario elige actuar y la interfaz gráfica responde a través de un manejador de eventos.

Para programar esto necesitamos:

Escribe un oyente (manejador de eventos)


Instanciar un objeto de esa clase
Registra el oyente en 1 o más componentes

¿Qué incendios?

–JTextField y JTextArea–presionando enter; objeto de evento =ActionEvent


–JButton–presionando el botón; objeto de evento = ActionEvent
–JRadioButton, JCheckBox, JComboBox–haciendo una elección; objeto de evento = ItemEvent
–JList–seleccionando un elemento; objeto de evento = ListSelectionEvent
–Cualquier componente–mouseup o mousedown o mover el ratón; objeto de evento = MouseEvent

Cuadros de diálogo en Swing

JDialog desciende directamente de la clase Dialog


•JDialog contiene una jerarquía de rootPane que incluye un contentPane
• Todos los diálogos son modales, lo que significa que el hilo actual se bloquea hasta que el usuario interactúe con él.

ha sido completado.
Tipos de cuadros de diálogo

• [Link]–informa sobre algo que ha sucedido al usuario


•[Link]–pregunta por una respuesta de confirmación, por ejemplo, sí, no, cancelar

•[Link]–solicitar al usuario una entrada

[Escriba texto] Page 32


Roll No.s:-90080302449, 90080302458, 90080302476,

Madame Gestión
En este proyecto estamos mostrando una funcionalidad de Gestión de Showroom. En este proyecto tenemos
one panel: Admin Panel. Admin can insert ,update or delete customers to customer details and
también base de datos de detalles del personal.

Hicimos esta aplicación en Core Java y mi base de datos es MS SQL Server 2005. Tenemos nuestra
base de datos en la carpeta de la aplicación App_data. Para ejecutar esta aplicación, solo adjunte esta base de datos en

your machine and change the connection string. Now when you run the application for the first
el tiempo que mostrará la página de inicio de sesión. Si ya te has registrado en el sitio, entonces ingresa tu

username and password and the application will redirect to your login page.

DIAGRAMAS DE FLUJO DE DATOS

Iniciar sesión
Inicio página
página

Señora
Costumbre Inventar
r detalle gestión ory

Personal factura
Información
n

[Escriba texto] Page 33


Roll No.s:-90080302449, 90080302458, 90080302476,

BASES DE DATOS

Inventario Cliente Personal registro


información n
detail

S_id name E id Nombre

tamaño
C_id
name Nombre L

disponible P_no
teléfono dirección

requerido dirección ciudad


dirección

ID de correo electrónico
price Correo electrónico
Trabajo
experiencia

Móvil
fecha

Usuario

[Escribe texto] Page 34


Roll No.s:-90080302449, 90080302458, 90080302476,

CAPTURAS DE PANTALLA DEL PROYECTO

Log-in Page: Los clientes y el personal que ya están registrados ingresarán su nombre de usuario y contraseña.
de lo contrario, se registrarán primero haciendo clic en el botón de registro.

[Escribe texto] Page 35


Roll No.s:-90080302449, 90080302458, 90080302476,

Home page:our home page contains 4 buttons which are bill, customer details , inventory, staff
información.

Registeration page:Any new user will get registered first and then will be able to goto home
página.

[Escriba texto] Page 36


Número de matrícula:-90080302449, 90080302458, 90080302476,

Staff info:This page will contain the general information about the staff members of showroom.

Customer details:This page will contains the basic information about customers .

[Escriba texto] Page 37


Roll No.s:-90080302449, 90080302458, 90080302476,

Inventory:This page will keep the record of number of items present in showroom as well as
número requerido de artículos.

Número de artículos disponibles/requeridos: esta página ayudará a conocer el número de artículos de ese particular.
producto Presente y requerido en el showroom.

[Escriba texto] Page 38


Números de matrícula:-90080302449, 90080302458, 90080302476

[Escribe texto] Page 39

También podría gustarte