Avatar billede fredand Forsker
30. november 2005 - 21:39 Der er 4 kommentarer og
1 løsning

How does "polymorphism" applies to members?

Hello!

I also got this question at a jobb interview, se code below.

I said that the output would be x.i = 10 since when polymorphism is used; it is the class of the object that matters and not the reference during execution.

But when I execute it it prints out: x.i = 5

class X
{
    public int i = 5;
}

class Y extends X
{
    public int i = 10;
}

public class Test1
{
public static void main( String[] args )
{
  X x = new Y();

  System.out.println( "x.i = " + x.i );
}
}

To me this is stange, too strange since I thougt I know this.
A bit embarrassing!

So if any one could explain how this works please let me know!

Best regards
Fredrik
Avatar billede arne_v Ekspert
30. november 2005 - 22:34 #1
To my best knowledge only methods are virtual not fields.
Avatar billede arne_v Ekspert
30. november 2005 - 22:39 #2
Same in C++ and C#

But I was once told that Delphi has virtual fields
Avatar billede fredand Forsker
01. december 2005 - 08:17 #3
Aha!

Yes I  do understand this now!!

Phu!!

Btw give a svar!!

Best regards
Fredrik
Avatar billede arne_v Ekspert
01. december 2005 - 13:41 #4
svar
Avatar billede vivian22 Nybegynder
22. juli 2012 - 01:54 #5
SPAM fjernet

Dette indlæg er blevet modereret af en CoAdmin

Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester