データ・カテゴリのパージ


Data Classとは?


Data Classは、データのアーカイブのために作成されたクラスです.
TOString()メソッド、hashcode()メソッド、equals()メソッド、copy()メソッドを自動的に作成します.

Data Classを使用する理由


データの保持を主な目的とするクラスを作成するには、ほとんど必要です.
getters()、setters()、toString()、copy()、component N()など
同じ機能を作成する必要があります.
データクラスを作成するたびに、これらの機能が作成されます.これは非効率な方法です.そのため、データを前に置くと、kotlinは自動的に上記の機能を追加します.

使用例

data class Song(
        val title : String = "",
        val singer : String = ""
)
上記のようにclassの前にdataを貼り付けます.

Data Class特性

  • 継承を取得できません.
  • 作成者Propertyはvalまたはvarとして宣言する必要があります.
  • データクラスに抽象、オープン、シール、および内部を追加できません.
    (更新後、sealedは継承可能であることを示す.)
  • 1つ以上のプロパティが必要です.
  • クラスでtoString()、HashCode()、equals()およびcopy()を巡回すると、この関数は直接実装されたコードを使用します.
  • Data Classの使用を試みる


  • toString()は、作成者で定義されたプロファイルのみを出力します.

  • hashCode()はクラスオブジェクト時に異なる値を返し、データクラスで同じ値を返します.

  • copy()は、配列内で1つの値だけを変更するのに適しています.
  • val song1 = Song("노래 제목", "가수")
    val song2 = song1.copy(title="제목2")
  • equals()値が同じかどうかを確認します.(==のキャラクター)
    cf.==の値は同じなのでtrueを出力しますが、メモリに他のオブジェクトが参照されているため==falseが出力されます.