自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 adb命令

文章目录查看设备安装软件软件卸载进入设置或者模拟器的shell从设备上下载文件到电脑把电脑的文件推送到设备查看数据库压力测试命令查看系统日志清理日志查看系统为每个app分配的内存大小查看app内存使用快照查看端口被占用情况查看debug.keystore的SHA1?查看进程的id查看进程的优先级查...

2020-02-29 16:35:00 195 0

原创 Git仓库分支(Branch)和标签(Tag)

仓库的分支(Branch)规范,影响到每个团队的工作流的一致性;标签(Tag)便于开发团队、测试团队和其他团队识别每个项目的版本,特别是在协同处理线上问题的时候,大家可以非常清楚地知道线上运行版本和代码库的对应关系。因此我们在制作的时候,主要考虑几个因素: 一是要有一定的规则,方便持续集成CI(...

2020-02-29 12:40:45 281 0

原创 Kotlin-简约之美-进阶篇(十八):与Java的较量

文章目录数据实体类接口变量懒汉式单例构造方法情况1情况2lambda的应用无参数有参数加法作为函数参数匿名函数闭包学习交流 在Java当中一些常量通常情况下都是定义在接口当中,默认情况下所有的成员变量都是public static final类型的,所有的方法都是public abstract类型...

2020-02-27 19:34:35 6294 0

原创 Kotlin-简约之美-进阶篇(十七):DSL的简单应用

文章目录1.原始方式2. 空适配器模式3. 高阶函数方式4. DSL方式学习交流 当接口的方法过多,而我们只需要其中一个方法时,例如TextView.addTextChangedListener,我们只需要它的onTextChanged方法时 1.原始方式 tv.addTextChangedLis...

2020-02-27 16:50:43 3933 0

原创 Kotlin-简约之美-进阶篇(十六):DSL原理解析

DSL(领域特定语言)是Kotlin所带来的强大语法特性之一,也是Java中所不存在的功能,JetBrain也基于DSL开发出了众多的开源库,Kotlin的开发者可以使用DSL来重构许多已有的代码,甚至有可能做到彻底抛弃HTML,XML,SQL等代码的地步。 现代编程语言已经越来越向自然语言靠拢,...

2020-02-27 16:23:47 6213 0

原创 Kotlin-简约之美-进阶篇(十五):let、with、run、apply、also函数的使用

相比Java, Kotlin提供了不少高级语法特性。对于一个Kotlin的初学者来说经常会写出一些不够优雅的代码。在Kotlin中的源码标准库(Standard.kt)中提供了一些Kotlin扩展的内置函数可以优化kotlin的编码。Standard.kt是Kotlin库的一部分,它定义了一些基本...

2020-02-27 16:13:21 6172 0

原创 Kotlin-简约之美-进阶篇(十四):inline内联函数

inline 的工作原理就是将内联函数的函数体复制到调用处实现内联 方法调用流程 调用一个方法是一个压栈和出栈的过程,调用方法时将栈针压入方法栈,然后执行方法体,方法结束时将栈针出栈,这个压栈和出栈的过程会耗费资源,这个过程中传递形参也会耗费资源。 为什么需要inline 有些简单的方法会被频繁...

2020-02-27 15:42:43 6034 0

原创 Kotlin-简约之美-进阶篇(十三):协程

文章目录什么是协程?使用1.runBlocking:T2.launch:Joblaunch方法源码解析1.协程下上文2.启动模式2.协程体3.async应用1.首先定义一个请求相关的支持DSL语法的接收者。2.然后给协程定义一个扩展方法,用于Retrofit网络请求。3.最后一步,让BaseAct...

2020-02-26 18:23:42 6297 1

原创 Kotlin-简约之美-进阶篇(十二):闭包

文章目录什么是闭包闭包的作用普通函数和闭包函数闭包总结学习交流 什么是闭包 闭包就是能够读取其他函数内部变量的函数。例如在javascript中,只有函数内部的子函数才能读取局部变量,所以闭包可以理解成“定义在一个函数内部的函数“。在本质上,闭包是将函数内部和函数外部连接起来的桥梁。 闭包的作用 ...

2020-02-23 17:20:59 3935 0

原创 Kotlin-简约之美-进阶篇(十一):高阶函数

Lambda是什么 在讲高阶函数之前,必须要明白什么是Lambda,简单来讲,Lambda是一种函数的表示方式(言外之意也就是说一个Lambda表达式等于一个函数)。更确切的说:Lambda是一个未声明的函数,会以表达式的形式传递 为什么要用Lambda 设想一下,在Android中实现一个Vie...

2020-02-23 12:05:33 3847 0

原创 Kotlin-简约之美-进阶篇(十):扩展函数和扩展属性
原力计划

文章目录扩展函数和扩展属性的实现为什么要用扩展函数和扩展属性学习交流 扩展函数给本来单薄的类添加了许多功能,今天我们来详细看一下扩展函数和扩展属性到底是什么,应该怎么用。 扩展函数和扩展属性的实现 我们都知道,Java 中,只有一个类型的成员属性和成员方法才能用“对象.属性 / 方法()”的方式调...

2020-02-22 23:35:20 3845 0

原创 Kotlin-简约之美-进阶篇(九):泛型

文章目录泛型类泛型方法生产者与消费者声明处型变学习交流 Kotlin 的泛型与 Java 一样,都是一种语法糖,只在源代码里出现,编译时会进行简单的字符串替换。泛型(Generics)其实就是把类型参数化,真正的名字叫做 类型参数,它给强类型编程语言加入了更强的灵活性。在 Java 中,只要是有类...

2020-02-22 23:28:55 6073 0

原创 Kotlin-简约之美-进阶篇(八):@JvmOverloads 注解

在Kotlin中@JvmOverloads注解的作用就是:在有默认参数值的方法中使用@JvmOverloads注解,则Kotlin就会暴露多个重载方法。 可能还是云里雾里,直接上代码,代码解释一切: 如果我们再kotlin中写如下代码:· fun f(a: String, b: Int = 0, ...

2020-02-20 21:31:53 3812 0

原创 Kotlin-简约之美-进阶篇(七):主构造方法和次构造方法

文章目录Primary ConstructorSecondary Constructor学习交流 Kotlin的构造函数分为主构造器(primary constructor)和次级构造器(secondary constructor),下面我们来看看他们的写法。 Primary Constructo...

2020-02-20 21:23:35 6218 0

原创 Kotlin-简约之美-进阶篇(六):延迟初始化lateinit var和by lazy

Koltin中属性在声明的同时也要求要被初始化,否则会报错。 例如以下代码: private var name0: String //报错 private var name1: String = "xiaoming" //不报错 private var name2: Strin...

2020-02-20 10:45:39 4716 0

原创 Kotlin-简约之美-进阶篇(五):object关键字使用详解

文章目录对象声明(Object Declaration)伴生对象(Companion object)对象表达式(Object Expression)对比object declaration、Companion object以及object expression的初始化时机 object是Kotli...

2020-02-19 12:36:40 6099 1

原创 Kotlin-简约之美-进阶篇(四):访问权限控制

默认的访问修饰符 在Kotlin世界中,无任何修饰的class、方法,等等默认就是public的,所以是隐式的 public的class class MyActivity { } public 的方法 fun methord() { } public 的变量 var temp: S...

2020-02-18 22:46:33 6479 0

原创 Kotlin-简约之美-进阶篇(三):Lambda的使用详解

文章目录Lambda介绍Lambda的使用Lambda表达式的特点Lambda语法实例讲解:Lambda实践it下划线(_)匿名函数带接收者的函数字面值闭包android实战 Lambda语法在Java中已经被广泛的运用,我们在开发Android中几乎上每一个项目也会在项目中接入Lambda插件,...

2020-02-11 12:04:34 5388 0

原创 Kotlin-简约之美-进阶篇(二):when的使用详解

提到 when,大家都会联想到 Java 中的 switch,然而在 kotlin 中,when 显然比 Java 中的 switch 要强大得多。首先,我们先来看看 when 的特点: 它可以作为表达式使用 使用更加安全 强大灵活的分支结构 可以不带参数 接下来,我来带大家逐步领略这些特点。以...

2020-02-11 11:36:08 286 0

原创 Kotlin-简约之美-进阶篇(一):null安全

文章目录变量类型声明Non-Null变量声明Nullable变量Non-Null变量赋值判断赋值使用“!!”赋值Nullable变量的使用“?”符号的使用“?:”符号的使用 在Java开发中,null一直是个大问题,哪怕我们再小心,也难免有疏忽的时候,Kotlin针对这个问题做了一些措施。 变量类...

2020-02-11 09:59:51 4703 0

原创 Kotlin-简约之美-基础篇(五):data类和enum类

enum类 与java不同,Kotlin中enum当做class的修饰符使用 1.常见用法: enum class Direction { NORTH, SOUTH, WEST, EAST } 2.有成员属性时: enum class Color(val rgb: Int) { ...

2020-02-10 11:55:21 4824 0

原创 Kotlin-简约之美-基础篇(四):类与继承

文章目录类的创建主构造方法次构造方法继承方法重写成员变量重写调用父类方法和成员变量 类的创建 与Java一样,Kotlin也是用class关键字声明类。 classUser{} Kotlin中一个类可以有一个主构造方法(primary constructor)和一个或多个次构造方法( second...

2020-02-10 11:04:11 8298 0

原创 Kotlin-简约之美-基础篇(三):基本控制语句

文章目录if,elsewhenforwhilebreak & continue if,else 与Java的相同点 Kotlin中的if,else可以像Java一样使用: fun method(num: Int) { if (num > 100) { pr...

2020-02-10 10:01:26 10420 0

原创 Kotlin-简约之美-基础篇(二):方法的定义和使用

文章目录方法定义定义语法:有返回值无返回值成员方法静态方法顶级方法方法调用顺序可变命名参数可变参数 方法定义 定义语法: fun [方法名] ( [参数名] : [参数类型] ) : [返回类型]{ ... return [返回值] } 有返回值 fun multiply(x:...

2020-02-09 21:14:09 8167 0

原创 Kotlin-简约之美-基础篇(一):变量的声明和使用

文章目录变量声明只读变量易变变量成员变量静态变量顶级变量Getters and SettersVisibility Modifiers 变量声明 只读变量 可理解为Java中常量,使用 val 关键字修饰 val a: Int = 1 //在声明的时候直接赋值 val b = 2 // 类型...

2020-02-09 19:58:56 8456 0

提示
确定要删除当前文章?
取消 删除