概述
先了解下 kotlin 跟 java 内部类的差异
Java 内部类的实现
public class Parent {
public static class Child{
}
}
public static void main(String...args){
Child child = new Child();
}
第二种方式
public class Parent {
public class Child{
}
}
public static void main(String...args){
Parent parent = new Parent();
Child child = parent.new Child();
}
而在Kotlin中 静态内部类 (默认)
class Parent{
//默认就是 java的 public static
class Child
}
fun main(args: Array<String>) {
val inner = Parent.Child()
}
kotlin 非静态内部类
class Parent{
//非静态内部类声明
inner class Child
}
fun main(args: Array<String>) {
val inner = Parent().Child()
}
类的访问 this
class Parent{
val a:Int = 0
inner class Child{
val a:Int = 5
fun hello(){
println(this@Parent.a)
}
}
}
fun main(args: Array<String>) {
val inner = Parent().Child()
inner.hello()
}
匿名内部类
interface OnClickListener{
fun onClick()
}
class View{
var listenner:OnClickListener? = null
}
fun main(args: Array<String>) {
val view = View()
view.listenner = object : OnClickListener{
override fun onClick() {
}
}
}
最后
以上就是现代枕头为你收集整理的Kotlin基础 7 - 内部类先了解下 kotlin 跟 java 内部类的差异的全部内容,希望文章能够帮你解决Kotlin基础 7 - 内部类先了解下 kotlin 跟 java 内部类的差异所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复