Please enable JavaScript.
Coggle requires JavaScript to display documents.
Kotlin - Coggle Diagram
Kotlin
特殊クラス
object
一時的なクラス
object宣言
companion object
Innerクラス
javaと一緒かな
Outerクラスのfiledにinnerクラスのインスタンスを保持するには、lateinitで型を指定するらしい
innerからouterのフィールドにアクセスする場合は
this@outer.name
みたいな感じでアクセスする
enum型
javaより簡単にかける
シールドクラス
クラス継承先の制限
sealedをclassの前につけるとなるらしい
制限とは、このクラスのインナークラスか、同じファイル内のクラスにしか継承が許されていないということ
Enumの拡張として使えるらしい
ステータスのEnumがあり、
それのError飲みにエラーコードを設定したい場合とか
確かにEnumにはあまり具体的な情報を持たせない法が良いので、あとから値をセットできるようにするとかはいいかもしれない
インタフェースとか抽象クラスを実装したクラスみたいな感じがする
型
list
listOfの場合はイミュータブル
mutableListOfで値を変更可能になる
削除
removeAtでindexを指定して削除
remove("element")で要素をさがして削除してくれる:w
キャスト
ダウンとアップとスマートキャストがある
スマートキャスト
if(user is Hero) {
// この中でダウンキャストしたのと同じことになるのかな
// Heroクラスで使えるメソッドが使える
}
文字列
変数を文字列内に入れることができる
"これは$valueです"
とか
数字
Intとかはマイナス値を取らないようにすることができるUIntとかULong
unsignedかな
オブジェクト指向
パッケージ
import時にasでalias設定できる。PHPみたい!
継承
継承する場合はopenをclassの前につけるらしい
public系のなにかかと思った
abstractにすることで抽象メソッドになる
openは継承できるかどうかを決めるだけか
きゃすと
コンスタラクタ
引数を指定できる。メソッドも同じ
関数
スコープ関数
let
also
run
with
apply