Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ejercicios8 PDF
Ejercicios8 PDF
Personal de la Universidad
1 n
PAS Profesor Estudiante
class Programa {
public static void main(String [ ] args){
Clase1 obj1=new Clase1();
obj1.imprimir(4);
Clase2 obj2=new Clase2();
obj2.imprimir(3);
}
}
class Clase1 {
protected int prop1=10,prop2=4;
public void imprimir(int i){
prop1=prop1+i;
prop2=prop2+i;
System.out.print(prop1+" "+prop2+" ");
}
}
class Clase2 extends Clase1 {
public void imprimir(int i){
prop1=prop1-i;
prop2=prop2-i;
System.out.print(prop1+" "+prop2);
}
}
class Driver {
public static void main(String[] args) {
Uno [] lista =new Uno [2];
lista [0]= new Dos();
lista [1]= new Tres();
for (int i=0; i<2; i++){
lista[i].frase();
}
}
}
6. En un banco tenemos varios tipos de cuentas bancarias en todas las cuales es posible retirar fondos y
hacer depsitos. Consideremos tres tipos de cuentas: cuenta corriente, libreta de ahorro y libreta 2000.
Las cuentas corrientes se usan para realizar pagos y no proporcionan ningn inters. La cuenta
corriente puede tener asociada una libreta de ahorro para cubrir descubiertos de la cuenta corriente. Por
otro lado, las libretas de ahorro proporcionan un inters del 4%. La libreta 2000 es un tipo de libreta de
ahorro que rinde un mayor inters (del 8%) pero la retirada de fondos est penalizada con un 2% de la
cantidad retirada. En estas condiciones:
a) Construir un diagrama de clases usando UML, incluyendo los atributos y mtodos en cada clase.
Incluya tambin las relaciones entre las distintas clases
b) Programar las clases resultantes
c) Construir un programa ejemplo que use las clases del apartado a). En el programa deben crearse
objetos de cada una de las clases, inicializando las cuentas con unos valores iniciales. Adems se
retiraran fondos de cada uno de los tipos de cuenta, se actualizarn los intereses de la libreta 2000 y
se depositar una determinada cantidad en la libreta 2000.
class Padre {
protected int aa=0;
public int aa() {
return aa;
}
}
class Hija extends Padre {
public Hija (int bb) {
this.aa=bb+1;
}
}
class Nieta extends Hija {
public Nieta (int cc) {
super(cc+2);
}
}
class Familia {
public static void main(String [] args){
Hija h= new Hija(4);
h=f(h);
System.out.println (h.aa());
}
private static Nieta f (Padre h) {
Nieta n=new Nieta (h.aa());
return n;
}
}
Publicacin
Tesis Revista
donde la clase publicacin tiene los mtodos: devuelve_autor y devuelve_editorial. La clase tesis tiene
adems el mtodo devuelve_departamento y la clase revista devuelve_nmero_de_revista. Qu
mtodos podran ser invocados usando una variable polimrfica de tipo publicacin?
Naturaleza
Animal
Hervboro
Rinoceronte
Elefante
class Ejercicio {
public static void main (String [] args) {
Vehiculo v= new Vehiculo("AAA", 1000);
Coche c = new Coche("BBB", 1000);
v.incrementar_precio(100);
System.out.print(v.devolver_marca()+ );
System.out.println(v.devolver_precio());
c.incrementar_precio(100);
System.out.print(c.devolver_marca()+ );
System.out.println(c.devolver_precio());
v=c;
v.incrementar_precio(100);
System.out.print(v.devolver_marca()+ );
System.out.println(v.devolver_precio());
}
}
class Vehiculo {
protected String marca;
protected double precio;
public Vehiculo (String marca, double precio) {
this.marca=marca;
this.precio=precio;
}
public void incrementar_precio(double p) {
precio=precio+p;
}
11. Implemente el cdigo de una interfaz llamada Primera que contenga dos mtodos A y B. Defina otra
interfaz llamada Segunda que herede de la anterior y adems contenga un mtodo llamado C. Escriba el
cdigo de otra clase llamada Objetos que use la segunda interfaz. Cuntos mtodos debe implementar
esta clase? Implemente dichos mtodos de forma que cada mtodo imprima una lnea indicando el
nombre del mtodo. Cree un programa que utilice los mtodos definidos.
12. Construya un programa que calcule el volumen molar de una sustancia a una presin y temperatura
dadas usando la ecuacin de estado de un gas ideal: PV=nNakT, donde p es la presin, V el volumen, n
el nmero de moles, Na la constante de Avogadro, k la constante de Boltzmann y T la temperatura.
23
Sabiendo que la contante de Avogadro vale 6.023 10 partculas/mol y la constante de Boltzmann
1.38066 10-23 J/K, el programa debe hacer uso de dichas constantes definindolas a travs de una
interfaz.
class Ejercicio {
public static void main (String [] args) {
Alumno alumno1;
alumno1=new Alumno("Felix", 5.0);
System.out.println (alumno1.calcularnota());
alumno1=new Alumno_Ordinario (Lucia, 7.0, 1);
System.out.println (alumno1.calcularnota());
}//fin mtodo
}//fin clase Ejercicio
interface A {
double a=2.3;
void imprimeresultadoA () {
System.out.println ("valor de a"+ a);
}
}
interface B {
int b=435;
void imprimeresultadoB () ;
}
class AA implements A, B {
double aa=324.32;
public void imprimeresultadoA () {
System.out.println ("valor de a"+ a+ "valor de aa"+ aa);
}
public void imprimeresultadoB () {
System.out.println ("valor de b"+ b+ "valor de aa"+ aa);
}
}
class Principal {
public static void main (String [] args) {
AA ob1=new AA();
ob1.imprimeresultadoA();
ob1.imprimeresultadoB();
}
}
15. En un banco se tienen una serie de clientes caracterizados por su NIF, nmero de cuenta y saldo.
Dentro de estos clientes existe un cliente especial llamado Preferente. Dicho cliente se caracteriza
porque posee varios fondos de inversin. Cada fondo se caracteriza por su nmero y el saldo mensual.
Se pide:
a) Dibujar, usando UML, el diagrama de clases indicando qu clases hay y la relacin entre ellas.
b) Implementar en Java todas las clases resultantes del diagrama.
c) Escribir un programa principal en Java donde se creen un cliente y un cliente Preferente. Para cada
uno de ellos se debe poder consultar todos los atributos que contiene. Adems, para el caso del cliente
Preferente se debe poder consultar tambin los datos de cada uno de sus fondos (nmero y el saldo
mensual). El nmero de fondos que posee el cliente Preferente y las caractersticas de cada fondo deben
introducirse por teclado.
16. Una tienda de informtica vende dos tipos de artculos (software y hardware) ambos caracterizados
por su cdigo (de tipo char) y su descripcin. Adems, en los productos software hay que indicar el tipo
de producto (con una cadena), y en los hardware se debe indicar si es un perifrico o no. Para saber el
precio de un artculo utilice una interface que indique que para un artculo cuyo cdigo es A el precio es
100.0 euros, si el cdigo es B el precio es 50.3; para un artculo con cdigo C el precio es 150.50 euros.
En el caso de ser un producto hardware, los artculos slo sern A B y si es un perifrico el precio se
incrementar en un 10%. Los productos sofware sern exclusivamente B C incrementndose el precio
del artculo en un 5% si el sofware es de tipo ProgramaJuegos. Nota: la interface debe tener un mtodo
abstracto.
a) Dibuje en UML los diagramas de las clases y las relaciones entre ellas. Para cada clase debe
indicar los atributos y mtodos teniendo en cuenta que se puede consultar y modificar cada
atributo.
b) Implemente las clases y la interfaz.
c) Realice un programa principal donde cree un objeto software y otro hardware y muestre el
precio y dems caractersticas del objeto.