一、String str = new String(“ab”) 会创建几个对象? javap -v StringNewTest.class 反编译后, 部分片段如下: 根据反...
一、String str = new String(“ab”) 会创建几个对象? javap -v StringNewTest.class 反编译后, 部分片段如下: 根据反...
问题 release 版本的包上出现图片无法显示的问题,出现以下错误日志: 之前在 debug 版一直没有出现,因为用的 SDK 需要把图片资源放到 drawable 下,分...
你真的完全了解setContentView()么?[https://mp.weixin.qq.com/s/6tEBj9b-Uuw7vT39infiAA] 创建一个 Activ...
1、@JvmOverloads 为了解决 Java 不能重载 kotlin 有默认参数的方法 Kotlin中代码: Java 中调用: 所以需要在 Kotlin 方法上添加 ...
为什么需要扩展函数? 在很多公司一些比较稳定良好的库都是 Java 开发的,也完全没必要去用 Kotlin 语言重写。但是想要扩展库的接口和功能,这时候扩展函数可能就会派上用...
除了作用域函数外,标准库还包含函数 takeIf 及 takeUnless看看 takeIf 和 takeUnless 的实现: takeIf : 接收一个判断条件表达...
getOrElse()[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/get-or-else...
let let 函数是参数化类型 T 的扩展函数。在 let 块内可以通过 it 指代该对象。返回值为 let 块的最后一行或指定 return 表达式。 以一个 Book ...
inline 本质 Kotlin中的内联函数使用inline关键字修饰,形如: 编译时,inline会将内联函数中的代码直接复制到调用处 inline 使用场景 Kotlin...
HTTP 协议 HTTP 协议是 Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服...
方法 一等方法对象 在Java中如果需要能够通知调用者或者其他地方方法执行过程的各种情况,可能需要指定一个接口,比如 View 的 onClickListener。而在 Da...
Dart基础 变量 变量是一个引用,未初始化的变量值是null。 可以用 Object、var 与 dynamic 声明的变量赋任何类型的值,但是背后的原理却是非常不同。 1...
访问者模式定义 访问者模式(Visitor),表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。 访问者模式使用场景 ...
命令模式定义 命令(Command)模式,将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,已经支持可撤销的操作。 命令模式的应用场...
责任链模式的定义与特点 责任链(Chain of Responsibility)模式:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系,于是将所有请求的...
策略模式的定义 策略模式定义了一系列算法,并将每个算法封装起来,而且使它们可以相互替换,且算法的变化不会影响使用算法的客户。策略模式属于对象行为模式,它通过对算法进行封装,把...
模板方法模式定义 模板方法(Template Method)模式定义一个操作中的算法骨架,而将算法的一些步骤延迟到子类中,使得子类可以不改变该算法结构的情况下重定义该算法的某...
外观模式定义与特点 外观模式又叫作门面(Facade)模式,为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 外观(Fa...