ホームページ >Java >&#&チュートリアル >Kotlin データ クラスと Java: 2 つの都市の物語 (ただし、一方の方が定型文がはるかに少ない)
ああ、データクラスですね。プログラミングの世界の地味な主力で、小さな勤勉なアリのように、ある関数から別の関数にデータを運びます。 ?しかし、Java では、これらのデータ キャリアの作成は、蟻塚全体を手作業で構築するように感じることがあります。公園でのピクニックのように楽なデータ クラスを備えた Kotlin をご利用ください。 ?
Java では、単純なデータ クラスの作成には、ゲッター、セッター、コンストラクター、equals()、hashCode()、および toString() メソッドが複雑に絡み合います。最も熟練した開発者でさえ、キーボードに向かって泣き叫ぶほどです。 ?
// Java public class Person { private String name; private int age; public Person(String name, int age) { this.name = name; this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } // ... (equals, hashCode, toString - the horror!) }
そのコードを見ているだけで、寝転びたくなります。 ?
しかし、Java 開発者の皆さん、心配する必要はありません。この言語は定型文の削減においてある程度の進歩を遂げました。ここでは、Kotlin のデータクラスの優雅さを垣間見ることができるいくつかのオプションを示します:
// Java record Person(String name, int age) {}
// Java import lombok.Data; @Data public class Person { private String name; private int age; }
これらのオプションは正しい方向へのステップではありますが、Kotlin データ クラスの簡潔さと機能の豊富さとは完全には一致しません。
Kotlin はその無限の知恵で、「定型文はもう十分です!」と言いました。そしてデータクラスを導入しました。データという 1 つのキーワードを使用すると、これらの重要なメソッドがすべて自動的に生成されます。それは魔法のようなものですが、実際に効果があるものです。
✨
// Kotlin data class Person(val name: String, val age: Int)
それだけです! 2 行のコードで、getter、setter、equals()、hashCode()、toString() をすべて備えた完全に機能するデータ クラスが完成します。ここからは Java 開発者の歓声が聞こえてきそうです。 ?
Kotlin データ クラスには、次のようないくつかの追加機能も付属しています。
Kotlin データ クラスは、Java ボイラープレートの世界に新風を吹き込みます。簡潔かつ効率的で、便利な機能が満載です。したがって、無限のゲッターとセッターを作成することにうんざりしている場合は、Kotlin の方法を採用する時期が来ています。あなたの指(そしてあなたの正気)はあなたに感謝するでしょう。 ?
追伸 あなたがまだ定型文に固執している Java 開発者であれば、心配する必要はありません。ライトはつけたままにしておきます。 ?
以上がKotlin データ クラスと Java: 2 つの都市の物語 (ただし、一方の方が定型文がはるかに少ない)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。