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

怎么查看网站备案商昆明网络公司网站

怎么查看网站备案商,昆明网络公司网站,wordpress 主题 免费,百度爱采购官网首页文章目录 什么是类类的属性类的方法#xff08;行为#xff09;构造函数主构造次构造 类的实例化#xff08;对象#xff09;伴生对象this 什么是类 在 Kotlin 中#xff0c;变量类型都是类#xff0c;像我们常见的Int、String等等#xff0c;都是类。 为什么要分类行为构造函数主构造次构造 类的实例化对象伴生对象this 什么是类 在 Kotlin 中变量类型都是类像我们常见的Int、String等等都是类。 为什么要分类其实原因很多就像有些时候只要提起猫你的脑海中立马浮现出猫捉老鼠、猫吃鱼······至少不是汪汪叫的猫。有了猫这一类别我们就能很容易地将其与它所拥有的行为、特点联系起来。还有些情况像是一个巨大的图书馆如果各种书都没有一定规律地堆放在一起我们很难去找到我们想要的书。 在 Kotlin 中使用class去定义一个类 class 类名 { 属性/方法 }我们能够像描述一只猫一样去定义一个类这样就足够了 class Cat类名首字母需要大写而一般情况下变量和函数采用驼峰命名首个单词小写后面如果有其他单词首字母大写 class MyClassval myVariable 变量fun myFun() {}类的属性 属性例如一只猫是什么颜色的有多高喜欢吃什么就是用于描述类状态的一系列变量。直接将其定义于类中即可 class Cat {val name: String 小橘 }类的方法行为 方法或者叫函数可定义该类所具有的行为 class Fishclass Cat {fun eat(fish: Fish) {} }构造函数 构造函数可以让我们在初始化类对象将猫这一类具体到某一只猫上时传入参数或者直接在构造函数中声明类的属性。 主构造 可以在类名后加一个小括号并写入对应的参数、属性。这与函数类似 class 类名([[val|var] 属性名: 类型], [参数名: 类型], ...) { 属性/方法 }我们可以给猫定义一些属性 class Cat(var name: String, val color: String)也可以给它们设置默认值 class Cat(var name: String, val color: String 橘色)我们也可以使用lateinit var将其定义于类中并使用init和参数将其初始化constructor可省 class Cat constructor(var name: String, colorParam: String) {lateinit var color: Stringinit {color colorParam} }或者是直接将color赋值为colorParam class Cat(var name: String, colorParam: String) {val color colorParam }NoteKotlin 中可以使用lateinit关键字修饰可变变量这样变量就可以暂时不用赋值。但是在使用时如果还未赋值就会抛出异常kotlin.UninitializedPropertyAccessException。lateinit不支持基本类型Primitive Types包含数字、字符和可空类型。 // 这些是不被允许的 // 数字 lateinit var byte: Byte lateinit var short: Short lateinit var int: Int lateinit var long: Long lateinit var float: Float lateinit var double: Double lateinit var boolean: Boolean // 字符 lateinit var char: Char // 任何可空类型 lateinit var nullableAny: Any?次构造 很多时候主构造并不能满足我们的需求我们可以再定义次构造。次构造使用constructor声明必须基于主构造使用this()调用主构造。 class Cat(val name: String, val color: String) {constructor(name: String): this(name, 橘色) {} }fun main() {val myCat Cat(小橘)println(${myCat.name} 是 ${myCat.color} 的) }小橘 是 橘色 的类的实例化对象 可以像调用函数一样调用它生成Cat对象使用.即可访问对象的属性或方法行为 class Cat(val name: String, val color: String)fun main() {val myCat Cat(小橘, 橘色)print(${myCat.name} 是 ${myCat.color} 的) }小橘 是 橘色 的伴生对象 对象实例化后每个对象都拥有自己的属性值例如两个Cat对象可能有不同的color。如果我们要声明一些该类所有对象都共有的并且是不受对象影响的属性或方法可以借助companion object来定义 class Cat {companion object {const val FAMILY 猫科} }Note在定义不可变的顶层变量文件中的最外面或对象变量object时如果该变量为基本类型Primitive Types包含数字、字符或String则建议使用const关键字修饰。特别地如果该变量为对象变量IDEA会提示需要将变量名改为全大写 object Object {const val NAME 一个单词直接全大写const val A_MULTI_WORDS_NAME 多个单词需要加下划线分割 }我们可以通过以下两种方式来访问该属性通常采用Cat.FAMILY fun main() {println(Cat.FAMILY)print(Cat.Companion.FAMILY) }猫科 猫科本质上是定义一个对象object默认名称为Companion我们可以指定该对象的名称这并不影响我们使用它 class Cat {companion object CatCompanion {const val FAMILY 猫科} }fun main() {println(Cat.CatCompanion.FAMILY)print(Cat.FAMILY) }猫科 猫科甚至可以继承Kotlin 中使用: 被继承类()表示继承这将在后续文章提到 class Cat {companion object CatCompanion: Base() {const val FAMILY 猫科} }open class BaseKotlin 并不支持使用对象来访问伴生对象的属性或方法 fun main() {val cat Cat()// cat.FAMILY 这是错误的 }this Kotlin 类中可以使用this指定类中的属性或方法这在很多时候是可以省略的。如果有时候出现混淆可以通过使用this避免这一情况 class Cat(var name: String) {fun changeName(name: String) {// 函数参数的 name 与 Cat 的 name 并不是同一个// 使用 this.name 指定 Cat 的 name// 如果不指定默认会访问到最小范围内的 name// 这里的最小范围是函数作用域中的 namethis.name name} }伴生对象中的this只能访问到伴生对象的属性或变量因为它是独立于类对象的 class Cat(var name: String) {companion object {const val FAMILY 猫科fun test() {this.FAMILY// this.name 错误的}} }在扩展函数中使用 class Cat(var name: String)fun Cat.speck() {print(${this.name}: 喵喵喵) }fun main() {Cat(小橘).speck() }小橘: 喵喵喵
http://www.w-s-a.com/news/117188/

相关文章:

  • wordpress 书站建筑公司简介范文大全
  • 建设官方网站多少鲜花网站建设的主要工作流程
  • 卖主机网站轻量wordpress主题
  • 网站建设规划书结构制作一个自己的网站
  • 外贸网站商城建设做网站和推广
  • 网站建设微信群免费简约ppt模板
  • 哈尔滨网站设计公司哪家更好shopify和wordpress
  • 岚县网站建设网站建设中效果
  • 网站建设软文推广网站建设分金手指排名十四
  • 网站建设要什么知识广州注册公司地址怎么解决
  • 自己可以做开奖网站吗wordpress和hexo
  • 成都网站关键词优化wordpress价格
  • 网站开发后端站建设 app开发网站
  • 毕业设计做网站好的想法开发网站代码量
  • 西宁网站建设排名wordpress的站点地址如何配置
  • 医院网站建设 价格app和网站开发的成本
  • 常见的网站开发工具山东建设厅官方网站李兴军
  • 二级院系网站建设情况做网站域名是什么意思
  • 网站开发双语辽宁省建设厅网站怎样下载表格
  • 网站后台密码怎么修改百度查重免费入口
  • 衡阳网站页面设计公司绍兴网站设计
  • 青岛手机建站多少钱做图表的网站 免费
  • 如何去建立和设计一个公司网站开封建设教育协会网站
  • 南充市住房和城乡建设局考试网站wordpress 下载模板站
  • 有没有单纯做旅游攻略的网站保定建站方案
  • 2017网站建设报价方案2022年企业所得税税率表一览
  • 可以做婚礼视频的网站有哪些工程公司管理制度
  • 做农产品网站需要做的准备中文手机网站设计案例
  • 福州做网站软件seo搜索优化专员招聘
  • 建站技术博客wordpress响应时间