(2)日志工具和kotlin语法——客户端开发学习
我使用的教材是《第一行代码》,感谢开放的互联网。
本篇内容包含:日志工具的概念知识和使用练习,以及kotlin的大部分基础语法特性
【日志工具的使用
工具类Log(andriod.util.Log):
- Log.v()->级别最低,对应verbose
- d->debug,调试信息,分析问题
- i->info,分析用户行为
- w->warn
- e->error
尝试日志工具
logcat过滤器尝试
logcat日志级别
【kotlin语言认识——杜绝空指针
运行结果:
知识点:
- 每一行代码不用加分号;
- 出色的类型推导机制;
- 对象数据类型;
- 语法糖:
fun largerNumber(num1: Int, num2: Int) = max(num1, num2)
变量
- val->不可变量
- var->可变
延迟赋值出错时可用解决办法:val a: Int = 10
函数
函数=方法
函数定义:
fun methodName(param1: Int, param2: Int): Int{//最后一个Int表示返回值类型,没有可不写
return 0
}
代码提示中选择函数模板后,还会自动导包。
运行结果:
逻辑控制
- 条件语句:if, when
if可以有返回值,为为真条件中最后一行代码的返回值。
when:匹配值 -> {执行逻辑}; 可以做类型匹配。
- 循环语句:while, for
概念: 区间
语法:val a = 0…10 表示[0, 10]
for-in语法常用: for(i in 0 until 10 step 2){}
输出:0,2,4,6,8
//0 until 10 =[0, 10)
// 10 downTo 0 = [10, 1)
面向对象编程
类与对象
继承与构造函数
继承手段:
1.class className{} -> open class className{}
2.class childClass: className(){}
构造函数:
- 主构造函数:没有函数体,但可用init调用逻辑
- 次构造函数:关键字comstructor,类似c++接受不完整信息时设置默认值的操作
接口
用法类似类对象:yourObjectName: interfaceName
使用类似继承,但是不带括号()的可以有多个接口
关键字: interface
可见性
- public->所有类对象
- protected->当前类,子类可见
- private->当前类对象
- internal->同一模块中的类可见
数据类与单例类
数据类关键字: data
数据类可被直接println
单例类关键字:object