| Kotlin | Java | Kotlinでの効果 |
|---|---|---|
| public | public | Javaと同じ |
| internal | public | モジュール内だけ利用可能 |
| protected | protected | Javaのprotectedに相当するがKotlinではパッケージごとにアクセス制限するという仕組みがない |
| private | package-private | Javaのprivateと違い、同じファイル内でアクセス可能。また、内部のprivateメンバは外部のクラスから参照できない |
internal/protected/privateはJavaコード上は上記の通りなのでJavaから無理矢理アクセス可能。 (internalはメンバ名が難読化される)