Kotlin(三)|Kotlin(三) - 类和函数
怎么定义一个类 如果你想定义一个类,你只需要使用class关键字
class MainActivity{}
有一个默认唯一的构造器,只需要在类名后面写上它的参数。如果这个类没有任何内容可以省略大括号:
class Person (name: String, surname: String)
那么构造函数的函数体在哪呢?你可以写在init块中:
class Person (name: String, surname: String)
{
init{}
}
类继承 默认任何类都是基础继承自Any(与java中的Object类似),但是我们可以继承其它类。所有的类默认都是不可继承的(final),所以我们只能继承那些明确声明open或者abstract的类:
package com.zhoujian.kotlindemo/**
* Created by zhoujian on 2017/5/19.
*/open class Animal(name:String)
{}
package com.zhoujian.kotlindemo/**
* Created by zhoujian on 2017/5/19.
*/class Person (name: String, surname: String):Animal(name)
{
init {}
}
函数 函数(我们Java中的方法)可以使用fun关键字就可以定义:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
如果你没有指定它的返回值,它就会返回Unit,与Java中的void类似,但是Unit是一个真正的对象。你当然也可以指定任何其它的返回类型:
fun add(x:Int,y:Int):Int{return x+y
}
【Kotlin(三)|Kotlin(三) - 类和函数】然而如果返回的结果可以使用一个表达式计算出来,你可以不使用括号而是使用等号:
fun sum(x: Int,y: Int) : Int = x + y
构造方法和函数参数 Kotlin中的参数与Java中有些不同。如你所见,我们先写参数的名字再写它的类型:
fun add(x: Int, y: Int) : Int {
return x + y
}
我们可以给参数指定一个默认值使得它们变得可选,这是非常有帮助的。这里有一个例子,在Activity中创建了一个函数用来toast一段信息:
fun toast(message: String, length: Int = Toast.LENGTH_SHORT)
{
Toast.makeText(this, message, length).show()
}
如你所见,第二个参数(length)指定了一个默认值。这意味着你调用的时候可以传入第二个值或者不传:
toast("Hello")
toast("Hello", Toast.LENGTH_LONG)
推荐阅读
- 放屁有这三个特征的,请注意啦!这说明你的身体毒素太多
- 一个人的旅行,三亚
- 2018-02-06第三天|2018-02-06第三天 不能再了,反思到位就差改变
- 第三节|第三节 快乐和幸福(12)
- android第三方框架(五)ButterKnife
- 遇到一哭二闹三打滚的孩子,怎么办┃山伯教育
- 三十年后的广场舞大爷
- 一百二十三夜,请嫁给我
- 2018年9月5日,星期三,天气晴
- 即将到手三百万