私はJavaを学び始めたばかりです。
私の勉強を手伝ってくれている友達がこれを送ってくれて、「これを理解して」と言った。
残念ながら私はこれを読むことができません。私にはPerlのように見えます。
class _{_ _;_(){_=this;}}
どういう意味ですか?
私はJavaを学び始めたばかりです。
私の勉強を手伝ってくれている友達がこれを送ってくれて、「これを理解して」と言った。
残念ながら私はこれを読むことができません。私にはPerlのように見えます。
class _{_ _;_(){_=this;}}
どういう意味ですか?
回答:
_クラス名です。非常に紛らわしいですが、機能します。
クラスの名前が変更された場合:
class Something {Something something;Something(){something=this;}}
そしてクリーンアップ:
class Something {
Something something;
Something() {
something=this;
}
}
そして、あなたはこの奇妙な命名に夢中になることができます :)
class _{_ __;_ ____;_(){__=this;____=__;}_(_ ___){__=___;}}
実際、Unicodeもサポートされているため、これは有効です。
class 合法類別名稱{合法類別名稱(){}}
get crazy例にはいくつかの間違いがあります。(1)____=__(2回)の後にセミコロンを追加するのを忘れた、(2)_メソッドをオーバーロードしようとしている場合は、型も渡す必要があるので、そうする_(___)必要があります_(_ ___)。これがどのように見えるかですclass _{_ __;_ ____;_(){__=this;____=__;}_(_ ___){__ = ___;}}。ちょっと待って。アンダースコアをデバッグしましたか?ブレーキの時間です。
_ はクラス名、アンダースコアは有効なJava変数名です。コードをインデントして、難読化を解除する必要があります。
class _{
_ _;
_(){
_=this;
}
}
お気に入り:
class A{
A A;
A(){
A=this;
}
}
編集: @DanielFischerに感謝します
タイプ名と変数名の名前空間は異なります。たとえば、コード
class FOO { FOO FOO; }はJavaで有効です。
概要
_ はクラス名です。 class _{ _はクラスメンバー名です。例:_ _;および_=this _ コンストラクタ名です。 _()注意:Javaは6つの異なる名前空間を使用します。
- パッケージ名、
- タイプ名、
- フィールド(変数)名、
- メソッド名、
- ローカル変数名(パラメーターを含む)、および
- ラベル。
さらに、宣言された各列挙型には独自の名前空間があります。異なるタイプの同一の名前は競合しません。たとえば、メソッドにはローカル変数と同じ名前を付けることができます。
class FOO { FOO FOO; }動作します。
data Foo = Foo | Bar Int。コンストラクターのみが機能します。もちろん、それが表示される場所から識別子のカテゴリを理解できる言語でのみ機能します。
それは良い例です。JavaではUnicodeを識別子にすることができるため、次のように記述できます。
class ⲥlass {
ⲥlass claѕѕ;
}
ここで、クラス名のcは「ⲥ」(U + 2CA5 COPTIC SMALL LETTER SIMA)であり、
オブジェクト名の「ѕ」(U + 0455 CYRILLIC SMALL LETTER DZE)。
class。それはキーワードです。
'class'。私は、オブジェクト名がいることを述べてきたように'claѕѕ'持っている'ss'非ASCII文字です。そう、実際にオブジェクトの名前はclaѕѕあるcla\u0455\u0455'私は、これは誤解をクリアだと思います。:)