Kotlin面向对象--类的定义方法

4人阅读 评论(0) 收藏 举报
分类:
Kotlin面向对象--类的定义方法

Kotlin中的类是使用class关键字来声明:

class Invoice {

}
Kotlin

类声明由类名,类头(指定类型参数,主构造函数等)和类体组成,由大括号括起来。类头和类主体都是可选的; 如果类没有主体,可以省略花括号。如下 -

class Empty
Kotlin

构造函数

Kotlin中的类可以有一个主构造函数和一个或多个辅助构造函数。 主构造函数是类头的一部分:它在类名后面(和可选的类型参数)。

class Person constructor(firstName: String) {
}
Kotlin

如果主构造函数没有任何注释或可见性修饰符,那么可以省略constructor关键字:

class Person(firstName: String) {
}
Kotlin

主构造函数不能包含任何代码。 初始化代码可以放在初始化程序块中,前缀为init关键字:

class Customer(name: String) {
    init {
        logger.info("Customer initialized with value ${name}")
    }
}
Kotlin

请注意,初始化程序块中可以使用主构造函数的参数。 它们也可以用在类体中声明属性的初始化器:

class Customer(name: String) {
    val customerKey = name.toUpperCase()
}
Kotlin

实际上,要声明属性并从主构造函数初始化它们,Kotlin有一个简洁的语法:

class Person(val firstName: String, val lastName: String, var age: Int) {
    // ...
}
Kotlin

与常规属性大体相同,主构造函数中声明的属性可以是多值(var)或只读(val)。

如果构造函数具有注释或可见性修饰符,则constructor关键字是必需的,修饰符将在它之前:

class Customer public @Inject constructor(name: String) { ... }


简单实例:

//矩形  长 宽
class Rect(var longs:Int,var width:Int)

fun main(args: Array<String>) {
    var rect1=Rect(longs=20,width = 10)
    println("举行的长度:${rect1.longs}")
    println("举行的宽度:${rect1.width}")

}

运行结果:

举行的长度:20
举行的宽度:10



查看评论

Kotlin从小白到大牛第2篇 【Kotlin】面向对象视频课程

本视频是智捷课堂推出的一套“Kotlin语言学习立体教程”的视频第二部分,主要内容包括:面向对象基础、继承与多态、抽象类与接口等。
  • 2017年12月25日 14:07

kotlin_函数定义与调用

1.创建集合setOf(),listOf(),hashMapOf() 集合方法:.last(),.max() 等2.优化函数背景:集合输出格式a.基本实现:fun joinToString( ...
  • qq_34023517
  • qq_34023517
  • 2017-12-12 12:25:28
  • 103

java面向对象之类、属性、方法

虽然学习java这门语言已经一年多了,但自己自我感觉仅仅是停留在语法测层面上,没有真正理解面向对象的含义,今天拜读了李运华大神编著的面向对象葵花宝典后,有一点收获,所以写下来一起分享 类 不用说专业术...
  • code_AC
  • code_AC
  • 2017-03-18 11:05:11
  • 638

php面向对象之——类的定义和属性方法的调用

/** * 1. 类的定义以class关键字开始,后面跟着这个类的名称。类的名称命名通常每个单词的第一个字母大写。 * 2. 定义类的属性 * 3. 定义类的方法 * 4. 实例化类的...
  • lingjiphp
  • lingjiphp
  • 2016-02-08 03:47:24
  • 2751

一步步学习kotlin for android(二)创建kotlin类

好了,开始学习kotlin的语法 首先说明,在不熟悉kotlin的情况下,可以使用java转kotlin的方式,了解两种语言的转换,就是先写java代码,然后 通过code----convert j...
  • feiyukill
  • feiyukill
  • 2017-05-25 18:21:29
  • 534

Kotlin中写静态方法

/** * Created by XXW on 2017/6/21. */ object Util { fun mylocath(a : Int) { } } 在定义的方法中...
  • pengtaQ
  • pengtaQ
  • 2017-06-21 14:42:47
  • 2755

Kotlin-数据类

概述在开发过程中,经常会创建一些数据里,其没有任何逻辑功能,仅仅来用来保存数据。在Kolin中,将这些类统一称为数据类,用关键字data标记。data class User(val name: Str...
  • IO_Field
  • IO_Field
  • 2016-11-23 14:01:03
  • 1829

Kotlin基本使用-类的声明

Kotlin 类的声明
  • TianFB
  • TianFB
  • 2017-05-25 15:36:24
  • 733

Kotlin——数据类和密封类

数据类有些类只是用来持有数据的。在这样的类中,一些标准的函数通常是从数据中推导出来的。在Kotlin中,这些类成为数据类并且以data作为标记: data class User(val name: ...
  • qq_19431333
  • qq_19431333
  • 2017-08-17 18:41:04
  • 431

Kotlin类和函数等相关定义学习(四)

Kotlin类、函数
  • learningITwell
  • learningITwell
  • 2017-05-31 17:42:42
  • 714
    个人资料
    等级:
    访问量: 9226
    积分: 465
    排名: 10万+
    文章分类
    最新评论