P57Param java


~/Java-wyklad-przyklady/w9/P57Param.java.html  1 class Dwie {  2     int x,y;  3     Dwie (int a,int b){  4         x=a;  5         y=b;  6     }  7 }  8 class Trzy extends Dwie{  9     int z; 10     Trzy(int a, int b, int c){ 11         super(a,b); 12         z = c; 13     } 14 } 15 class Cztery extends Trzy{ 16     int v; 17     Cztery(int a, int b, int c, int d){ 18         super(a,b,c); 19         v = d; 20     } 21 } 22 class TabOdDwie <Typ extends Dwie>{ 23     Typ[] tab; 24     TabOdDwie(Typ[] t){ 25         tab = t; 26     } 27 } 28 29 public class P57Param { 30     static public void main(String[] argv){ 31         Dwie[] tabDwie = {new Dwie(0,0),new Dwie(1,2)}; 32         TabOdDwie<Dwie> tD = new TabOdDwie<Dwie>(tabDwie); 33         drukujDwie(tD); 34         //drukujTrzy(tD); Błąd kompilacji 35         System.out.println("-------"); 36 37         Trzy[] tabTrzy = {new Trzy(0,0,0), new Trzy(10,11,12)}; 38         TabOdDwie<Trzy> tT = new TabOdDwie<Trzy>(tabTrzy); 39         drukujTrzy(tT); 40         drukujDwie(tT); 41 42         System.out.println("-------"); 43 44         Cztery[] tabCztery = {new Cztery(0,0,0,0), 45                       new Cztery(100,101,102,103)}; 46         TabOdDwie<Cztery> tC = new TabOdDwie<Cztery>(tabCztery); 47         drukujCztery(tC); 48         drukujTrzy(tC); 49         drukujDwie(tC); 50 51         System.out.println("-------"); 52 53     } 54     static void drukujDwie(TabOdDwie<?> t){ 55         System.out.println("Dwie"); 56         for(int i = 0; i < t.tab.length; i++){ 57             System.out.println(t.tab[i].x + " " + t.tab[i].y); 58         } 59     } 60     static void drukujTrzy(TabOdDwie<?extends Trzy> t){ 61         System.out.println("Trzy"); 62         for(int i = 0; i < t.tab.length; i++){ 63             System.out.println(t.tab[i].x + " "  64                     + t.tab[i].y + " " 65                     + t.tab[i].z); 66         } 67     } 68     static void drukujCztery(TabOdDwie<?extends Cztery> t){ 69         System.out.println("Cztery"); 70         for(int i = 0; i < t.tab.length; i++){ 71             System.out.println(t.tab[i].x + " "  72                     + t.tab[i].y + " " 73                     + t.tab[i].z + " " 74                     + t.tab[i].v); 75         } 76     } 77 78 } 79

Wyszukiwarka