2017-03-10 4 views
-1

私はJavaを初めて使いこなし、初めてNestedクラスを使用しようとしています。 私は2つの内部クラスと外部クラスを持っていると私は innerclassクラスインスタンスを数値にマッピングする

class OuterClass { 
    ... 
    class Person { 
     class Like { 
     } 
     **public static Map<Integer, Like> Likes;** 
    } 
} 

を持つことができるようにしようとしているが、それはJavaで可能ですか?私は間違った方向に行くかもしれないと、おそらく存在しないか、または行うためのより良いOOPのapprochはそれが可能である。この方法

type Like struct { 

} 

type Person struct { 
    Name string 
    **Likes map[int]Like** 
} 

:たとえば次のようになりますGolangで ?

+1

ようになりますが、あなたが投稿のコードを試してみましたか?何が悪かったのか? (Googleにはおそらくエラーメッセージが表示されましたか?) – ruakh

答えて

0

はい、これが可能であり、あなたのコードが

class Client{ 

class Outer{ 
    class Phone{ 
     class Like{ 
       public void sayHello(){ 
       System.out.println("Hello"); 
      } 
     } 

     public static void method(Outer.Phone.Like g){ 
      l.sayHello(); 
     } 
    } 

} 

    public static void main(String[] args){ 
    Client q = new Client(); 
    Client.Outer o = q.new Outer(); 
    Client.Outer.Phone p = o.new Phone(); 
    Client.Outer.Phone.Like l = p.new Like();   
    p.method(l);  //call sayHello and print Hello 

}

関連する問題