当前位置: 首页 > news >正文

安陆做网站公司家居品牌策划公司

安陆做网站公司,家居品牌策划公司,平面图设计软件有哪些,网站网站开发者犯法吗在关键字一——var和val中最后提到了构造函数,这里就学习下构造函数相关的关键字: constructor和init。 主要构造(primary constructor) kotlin和java一样,在定义类时就自动生成了无参构造 // 会生成默认的无参构造函数 class Person{ }与java不同的是…

在关键字一——var和val中最后提到了构造函数,这里就学习下构造函数相关的关键字: constructor和init。

主要构造(primary constructor)

kotlin和java一样,在定义类时就自动生成了无参构造

// 会生成默认的无参构造函数
class Person{
}

与java不同的是,当kotlin的构造函数中必须带参数时,则需要在类名后面直接添加参数:

class Person(var name:String, var age:Int){
}

这种在类名后面添加参数(包含无参)的构造方法就称为主要构造(primary constructor)

次要构造(secondary constructor)

当类包含多个构造函数时,需要通过次要构造实现, 次要构造需要用constructor关键字修饰:

// primary constructor
class Person(var age: Int, var name: String) {// secondary constructorconstructor(name: String) : this(18, name = name)
}

次要构造使用上需要注意:

  • 次要构造需要直接或间接调用主要构造
    // primary constructor
    class Person(var age: Int, var name: String) {// 会提示: Primary constructor call expectedconstructor(name: String)
    }
    
  • 次要构造中不能声明类的属性,即不能使用var或val
    class Person(var age: Int, var name: String) {constructor(name: String) : this(age = 18, name)// 提示'var' on secondary constructor parameter is not allowedconstructor(var address:String, name: String):this(name)
    }
    

init

kotlin提供了一个方法init,当有多个构造方法,无论使用哪个构造方法都会调用到init方法:

// 调用 Person("xiao ming")或者 Person(16, "小明")后 都会输出
// I am a person
class Person(var age: Int, var name: String) {constructor(name: String) : this(age = 18, name)init {System.out.println("I am a person")}
}

可以看下实现原理:

public final class Person {public Person(int age, @NotNull String name) {super();this.age = age;this.name = name;// init方法System.out.println("I am a person");}public Person(@NotNull String name) {this(18, name);}
}

可以看到kotlin构造的执行顺序是
主构造——>init()——>次要构造

http://www.yayakq.cn/news/108253/

相关文章:

  • 中学网站建设方案计划ui培训周末班
  • 怎样做网站能百度能搜到百度企业信用
  • 微信开发网站开发未来前景网上可以推广的地方
  • 网站建设仟首先金手指12国内购物网站大全
  • 单片机程序员开发网站桥头做网站
  • 关于传媒的网站模板企业建网站的费用
  • 做公益网站赚钱吗网络维护服务合同
  • 专业做网站的公司哪家好仿新浪全站网站源码
  • 网站中医建设免费wordpress 模板
  • 手机网站模板免费模板中国纪检监察报社长范清安
  • 网站备案麻烦吗杭州设计院
  • 如何对网站做渗透单页竞价网站
  • 不备案 国内网站吗网络教学平台
  • 市总工会网站建设经验材料喜茶vi设计案例分析ppt
  • 免费看电视剧的网站2021dw旅游网站设计教程
  • 千万不能 网站wap音乐网站源码
  • 佛山个性化网站搭建北京做网站的
  • 网站建设的主机wordpress 直接拖拽式建站
  • 图书销售网站网页设计模板谷歌推广怎么开户
  • 福州网站建设q.479185700強做商城网站带宽
  • 推广网站的网址和网鱼相匹配酷家乐软件培训班
  • 建设部网站人员查询wordpress 4.7.3主题
  • 旅游网站建设策划方案seo计费系统
  • 装修网站建设网网站建设签收单
  • 免费推广企业网站凡科建站提示网站建设中
  • 企业商务网站建设的基本方法六安本地网站
  • 阿里云 有企业 网站吗四川建设网官网安全员证书查询
  • 网站建设电子合同模板三方物流网站建设
  • 石家庄专业网站营销国际建设管理学会网站
  • 网站开发语言怎么看wordpress 扫码支付宝