Foro de elhacker.net

Programación => Java => Mensaje iniciado por: Carlosjava en 9 Agosto 2015, 10:52 am



Título: Persona is-a Persona?
Publicado por: Carlosjava en 9 Agosto 2015, 10:52 am
En una pregunta del test me salieron estas opciones, si son correctas o incorrectas

Profesor extends Persona
profesorAsalariado extends Profesor

Estas son las opciones:

Profesor IS-A Persona
Profesor HAS-A Persona
profesorAsalariado IS-A Profesor
Persona IS-A Persona

Cuales de ellas son correctas? 3 de 4 son correctas, creo que es una pregunta trampa y necesitaria vuestra ayuda, gracias.


Título: Re: Persona is-a Persona?
Publicado por: ivancea96 en 9 Agosto 2015, 13:58 pm
Podemos decirte cuales son, o puedes decirnos tú cuales crees que son y por qué. Y ya luego te explicamos si fallaste algo, o si está todo bien xD


Título: Re: Persona is-a Persona?
Publicado por: Carlosjava en 9 Agosto 2015, 19:46 pm
Yo creo que la segunda es incorrecta, el resto son correctas.

Me equivoco?? :rolleyes: :P

HAS-A (tiene un/a...) no es lo mismo que IS-A(es un/a...)

lo que me ha parecido mas raro es la opcion Persona is a Persona... porque en netbeans si pongo eso no compilaria por la palabra repetida ...


Título: Re: Persona is-a Persona?
Publicado por: ivancea96 en 9 Agosto 2015, 21:25 pm
¿No compilaría? ¿Qué es lo que te marca?

Haciendo una prueba con algo como:

Código
  1. class Persona{}
  2. class Profesor extends Persona{}
  3. class ProfesorAsalariado extends Profesor{}
  4.  
  5. public class A{
  6.    public static void main(String[] args){
  7.        Persona persona = new Persona();
  8.        Profesor profesor = new Profesor();
  9.        ProfesorAsalariado profesorAsalariado = new ProfesorAsalariado();
  10.  
  11.        if(profesor instanceof Persona) // Profesor IS-A Persona
  12.            System.out.println("YES");
  13.        else
  14.            System.out.println("NO");
  15.  
  16.        if(profesorAsalariado instanceof Profesor) // ProfesorAsalariado IS-A Profesor
  17.            System.out.println("YES");
  18.        else
  19.            System.out.println("NO");
  20.  
  21.        if(persona instanceof Persona) // Persona IS-A Persona
  22.            System.out.println("YES");
  23.        else
  24.            System.out.println("NO");
  25.  
  26.        if(persona instanceof Profesor) // EXTRA: Persona IS-A Profesor
  27.            System.out.println("YES");
  28.        else
  29.            System.out.println("NO");
  30.    }
  31. }

La salida es:
Citar
YES
YES
YES
NO


Título: Re: Persona is-a Persona?
Publicado por: Carlosjava en 9 Agosto 2015, 23:08 pm
Muchas gracias por tu tiempo y por aclararme las dudas!!

Tengo otro problema q no lo tengo muy claro, si pido mucho, no te molestes en responderme aunque te lo agradeceria mucho.

Gracias otra vez por aclararme las dudas de Persona, saludos.

Código
  1. class Test
  2. {
  3.    public static void main(String args[])
  4.    {
  5.        int c = 0;
  6.        A: for(int i = 0; i < 2; i++)
  7.        {
  8.            B: for(int j = 0; j < 2; j++)
  9.            {
  10.                C: for(int k = 0; k < 3; k++)
  11.                {
  12.                    c++;
  13.                    if(k>j) break;
  14.                }
  15.            }
  16.        }
  17.        System.out.println(c);
  18.    }
  19. }

Hago el debug y no se para donde va la verdad... que si empieza por la etiqueta C y luego por B...

Consola: 10


Mod: Los códigos deben ir en etiquetas GeSHi


Título: Re: Persona is-a Persona?
Publicado por: ivancea96 en 9 Agosto 2015, 23:49 pm
No entiendo qué quieres hacer.

Y a todo esto, recuerda poner las etiquetas GeSHi rodeando el códgo a la hora de crear los mensajes. O con el selector de opciones, o escribiendo "[ code=java ] [/ code ]" (sin los espacios)


Título: Re: Persona is-a Persona?
Publicado por: Carlosjava en 10 Agosto 2015, 13:44 pm
Que que quiero hacer? Pues aclarar y resolver mis dudas...

Perdon por no poner las etiquetas, para la proxima vez lo haré, gracias por avisar.

Un saludo.


Título: Re: Persona is-a Persona?
Publicado por: DarK_FirefoX en 10 Agosto 2015, 16:05 pm
Que que quiero hacer? Pues aclarar y resolver mis dudas...

Jajaja  :laugh: :silbar:

ivancea96 se refiere a que: ¿Que quieres hacer con tu código?

Salu2s