classHello(// 主构造函数, 直接在主构造函数中定义属性varname:String,// 该值是临时变量, 为 age 属性赋值_age:Int){// 类中的属性varage=_agevartype="老鼠"vargender:String init{println("init 初始化块开始执行")gender="男"}constructor(_age:Int):this("Tom",_age){println("次构造函数开始执行...
classStudentconstructor(name:String,age:Int){init{println("主构造函数参数 : name : ${name} , age : ${age} ;")}//等号右边的 name 是构造函数参数值varname:String=name+" L"//等号右边的 age 是构造函数参数值varage:Int=age+1init{println("成员变量 : name : ${this.name} , age : ${...
classCustomer(val customerName:String="") 实例 classRunoobconstructor(name:String){// 类名为 Runoob// 大括号内是类体构成varurl:String="http://www.runoob.com"varcountry:String="CN"varsiteName=name init{println("初始化网站名: ${name}")}// 次构造函数constructor(name:String,alexa:Int):this...
一、init 初始化块 在Kotlin 类中 , 可以定义 init 初始化块 , 在其中可以为 变量赋值 , 执行一些检查相关的代码 , 该 init 初始化块在 创建类实例对象 代码示例 :在下面的代码中的 init 初始化块 中 , 对 name 属性进行了修改 , 检查了 age 属性是否合法 ; class Hello( // 主构造函数, 直接在主...
init---initconstructor,name=zhangsan class Student() 等价于 class Student constructor(),如果需要对主构造函数的权限进行控制,可以修改如下。 classStudentprivateconstructor(){...} 3.2 有参主构造函数(普通参数) funmain(){varstu1=Student("xiao ming",23)println("--...
*/classTest(num: Int){ ... } 1.2、构造函数中的初始化代码块 构造函数中不能出现其他的代码,只能包含初始化代码。包含在初始化代码块中。 关键字:init{...} 值得注意的是,init{...}中能使用构造函数中的参数 例: funmain(args:Array<String>){// 类的实例化,会在下面讲解到,这里只是作为例子讲解打...
class Person 1. 2.构造函数 1.在Kotlin中可以有一个主构造函数(一般紧跟在类名后)和多个次构造函数。如下实例为类中只有主构造函数的类: class Person(height: Int) { } 1. 2. 2.主构造器不能包含除属性声明的任何代码块,初始化的代码可以放到以init关键字作为前缀的初始代码块中。且多个初始化代码块是按...
class Test constructor(num : Int){ ... } 等价于 /* 因为是默认的可见性修饰符且不存在任何的注释符 故而主构造函数constructor关键字可以省略 */ class Test(num: Int){ ... } 1.2、构造函数中的初始化代码块 构造函数中不能出现其他的代码,只能包含初始化代码。包含在初始化代码块中。 关键字:init{...
final class Invoice {} 1 构造函数 kotlin:有一个主构造函数以及零个或多个次构造函数,主构造函数不能包含任何代码,初始化代码放到 init 关键字作为前缀的代码块中 java:可以定义多个构造函数,不分主次 class Person constructor(firstName: String) { init { print("我是init代码块,等同于主构造函数代码块")...
classView(tt: Int) { init {//这个init会先执行,然后再执行下面的initprintln("view init: ${tt}") } init { println("view init 2") } } 如果有多个init,则会从上到下按顺序执行 3、从构造方法 一个类里面可以有多个从构造方法,格式是 constructor(...): this(...)或者如果有父类可以是 constr...