![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
kotlin
文章平均质量分 69
Android-Developer
Android 开发工程师
展开
-
kotlin语言中的out和in,协变和逆变
extends People> aa,表示集合存储的是 People和 People的子类对象,限定了上届,而 list 存储的是 People子类的对象,所以代码编译通过,它是成立的;把 list 作为参数传入 run方法中,等同于 List aa= list,但是 List aa= list 是不成立的,虽然 Man 继承于 People,test只保存的是 People类型的对象,list 只保存 Man 类型的对象,test和 list 是没有任何关系的。原创 2023-08-31 14:07:43 · 404 阅读 · 0 评论 -
kotlin 委托,类委托、属性委托
在上面的示例中,DelegatePrinter`类实现了`Printer`接口,并将其所有方法委托给传入的`printer`对象。在上面的示例中,ExampleDelegate 类实现了`getValue`和`setValue`函数,用于管理`ExampleClass`类中的`property`属性的访问和修改。委托类需要实现`getValue`和`setValue`函数,以便在属性被访问或修改时执行相应的操作。在Kotlin中,我们可以使用接口委托和属性委托来实现类委托。原创 2023-08-30 17:30:45 · 238 阅读 · 0 评论