2

友人から、これはJavaスコープを学ぶための良い例だと言われましたが、私にはわかりません。

aですか?私は完全に迷子になっています!

public class scopesexample {

    public static a a = new a<a>(a(new a()));

    public static class a<a> {
        a a;

        public a() {
            this.a = a(a(null));
        }

        public a(a a) {
            this.a = a;
        }

        public a a(a a) {
            return a;
        }

        public String toString() {
            return "a";
        }
    }

    public static a a(a a) {
        return new a<a>(a);
    }

    public static void main(String[] args) {
        System.out.println( a );
        System.out.println( a( a ) );
        System.out.println( a.a );
        a<a> a = new a<a>(a(new a()));
        System.out.println(a.a( a ));
        System.out.println( a );
        System.out.println( a );
        System.out.println(a.class);
        System.out.println(a.getClass());
        System.out.println(a.a);
        System.out.println(a( a ));
        System.out.println(a( a ).a);
    }
}
4

1 に答える 1

10

私のアドバイスはあなたの友達を無視することです。

彼または彼女はあなたを巻き込んでいるか、学生がスコープについてどのように学ぶかについて知らないかのどちらかです。

まず、aクラス、メソッド、変数名の両方を使用することで、彼はコードスタイルのガイドラインと常識に違反しました。

2番目の問題は、名前空間を理解する問題をスコープを理解する問題に追加したことです。これは不要で混乱を招きます。

于 2012-09-14T15:12:48.513 に答える