今天的视频内容是关于Kotlin中类的相关知识。
众所周知,Kotlin是一门面向对象语言。
首先我们新建了一个项目,然后再新建一个package:
在放代码前有一个小细节,我们下面的代码虽然直接使用实例访问属性,但实际上Kotlin会调用属性隐藏的getter方法
在Kotlin中,所有默认都是public的
我们还可以设置private,internal等(后面会讲)
这里有个小总结(关于成员的可访问性):
public:所有都可访问
private:内部类,子类不可以
protected:内部类,子类可以
internal:module内可访问
这期视频我们写了两个文件(知识点都在文件里,很简单):
package Aquarium
class Aquarium{
var width:Int = 20
var height:Int = 40
var length:Int = 100
var volume:Int
get() = width*height*length/1000
set(value) {height=value*1000/width*length}
}
package Aquarium
fun main(args:Array<String>){
buildAquarium()
}
fun buildAquarium(){
val myAquarium = Aquarium()
println("length:${myAquarium.length}," +
"width:${myAquarium.width}," +
"height:${myAquarium.height}")
myAquarium.height=80
println("height:${myAquarium.height} cm")
println("volume:${myAquarium.volume} liters")
}
接下来又到了练习环节:
1-建一个SimpleSpice类
2-两个属性,name of the spice。level of spiciness,要求都是String类型的
3-name设置成curry,level设置成mild
4-增加一个属性heat,返回level的数字表示,mild表示5
5-创建一个实例,输出name和heat
参考答案是:
class SimpleSpice(){
val name = "curry"
val spiciness = "mild"
val heat: Int
get() {return 5 }
}
val simpleSpice = SimpleSpice()
println("${simpleSpice.name} ${simpleSpice.heat}")