Categorie
Winzipedia Uso dell'wiki |
OverloadTuttiICasiDiOverride.Overload VersioniNascondi le modifiche minori - Mostra le modifiche Modificate le linee 14-15: da:
Con questa pagina ho cercato di mettere tutti i casi che si possono avere sull'esercizio che abbiamo sbagliato tutti nel primo compitino. a:
Con questa pagina ho cercato di mettere tutti i casi che si possono avere sull'esercizio che abbiamo sbagliato tutti nel primo compitino. LA gerarchia banalmente A-B-C. Il codice scritto in java ed compilabile, notate come l'output sia ricorsivo e le risposte siano per ogni sequenza: AAABBC, e come il metodo, che stato invocato, dipenda solo dal reale tipo dell'oggetto e non da quello al quale stato assegnato. Aggiunte le linee 1-401:
!Override / Overload '''Autore: Tomaux'''\\ ->'''Sommario''' ->[-Introduzione-] ->[-La classe A-] ->[-La classe B-] ->[-La classe C-] ->[-L'output-] !!Introduzione !!La classe A package info3_2; class Class_A { public String stato = "sono un A"; public Class_A() { } public static void main(String[] args) { Class_A A1 = new Class_A(); Class_A A2 = new Class_B(); Class_A A3 = new Class_C(); Class_B B2 = new Class_B(); Class_B B3 = new Class_C(); Class_C C3 = new Class_C(); A1.foo(A1); A1.foo(A2); A1.foo(A3); A1.foo(B2); A1.foo(B3); A1.foo(C3); A2.foo(A1); A2.foo(A2); A2.foo(A3); A2.foo(B2); A2.foo(B3); A2.foo(C3); A3.foo(A1); A3.foo(A2); A3.foo(A3); A3.foo(B2); A3.foo(B3); A3.foo(C3); B2.foo(A1); B2.foo(A2); B2.foo(A3); B2.foo(B2); B2.foo(B3); B2.foo(C3); B3.foo(A1); B3.foo(A2); B3.foo(A3); B3.foo(B2); B3.foo(B3); B3.foo(C3); C3.foo(A1); C3.foo(A2); C3.foo(A3); C3.foo(B2); C3.foo(B3); C3.foo(C3); } public void foo (Class_A A1){ System.out.println(A1.stato); System.out.println("sono nella classe A"); System.out.println("----------------------"); } public void foo (Class_B B1){ System.out.println(B1.stato); System.out.println("sono nella classe A"); System.out.println("----------------------"); } public void foo (Class_C C1){ System.out.println(C1.stato); System.out.println("sono nella classe A"); System.out.println("----------------------"); } } !!La classe B package info3_2; class Class_B extends Class_A{ public String stato = "sono un B"; public Class_B() { } public static void main(String[] args) { Class_B class_B1 = new Class_B(); } public void foo (Class_A A1){ System.out.println(A1.stato); System.out.println("sono nella classe B"); System.out.println("----------------------"); } public void foo (Class_B B1){ System.out.println(B1.stato); System.out.println("sono nella classe B"); System.out.println("----------------------"); } public void foo (Class_C C1){ System.out.println(C1.stato); System.out.println("sono nella classe B"); System.out.println("----------------------"); } } !!La classe C package info3_2; class Class_C extends Class_B{ public String stato = "sono un C"; public Class_C() { } public static void main(String[] args) { Class_C class_C1 = new Class_C(); } public void foo (Class_A A1){ System.out.println(A1.stato); System.out.println("sono nella classe C"); System.out.println("----------------------"); } public void foo (Class_B B1){ System.out.println(B1.stato); System.out.println("sono nella classe C"); System.out.println("----------------------"); } public void foo (Class_C C1){ System.out.println(C1.stato); System.out.println("sono nella classe C"); System.out.println("----------------------"); } } !!L'Output sono un A sono nella classe A ---------------------- sono un A sono nella classe A ---------------------- sono un A sono nella classe A ---------------------- sono un B sono nella classe A ---------------------- sono un B sono nella classe A ---------------------- sono un C sono nella classe A ---------------------- sono un A sono nella classe B ---------------------- sono un A sono nella classe B ---------------------- sono un A sono nella classe B ---------------------- sono un B sono nella classe B ---------------------- sono un B sono nella classe B ---------------------- sono un C sono nella classe B ---------------------- sono un A sono nella classe C ---------------------- sono un A sono nella classe C ---------------------- sono un A sono nella classe C ---------------------- sono un B sono nella classe C ---------------------- sono un B sono nella classe C ---------------------- sono un C sono nella classe C ---------------------- sono un A sono nella classe B ---------------------- sono un A sono nella classe B ---------------------- sono un A sono nella classe B ---------------------- sono un B sono nella classe B ---------------------- sono un B sono nella classe B ---------------------- sono un C sono nella classe B ---------------------- sono un A sono nella classe C ---------------------- sono un A sono nella classe C ---------------------- sono un A sono nella classe C ---------------------- sono un B sono nella classe C ---------------------- sono un B sono nella classe C ---------------------- sono un C sono nella classe C ---------------------- sono un A sono nella classe C ---------------------- sono un A sono nella classe C ---------------------- sono un A sono nella classe C ---------------------- sono un B sono nella classe C ---------------------- sono un B sono nella classe C ---------------------- sono un C sono nella classe C ---------------------- |