美文网首页Android知识Android开发Kotlin
Kotlin学历之抽象类与接口

Kotlin学历之抽象类与接口

作者: i校长 | 来源:发表于2017-06-13 09:44 被阅读306次

简述

Kotlin 中的抽象类和接口与 Java 8 类似,同样用到abstractinterface关键字,java7以及之前最大的不同就是Kotlin的接口是可以有实现的。

抽象类

抽象类的格式如下:

abstract class 抽象类名[(主构造函数)][: 继承父类和实现接口] {……}

例:声明一个抽象的Person类,一个主构造函数,一个name属性。

abstract class Person(val name : String) { }

注意:即使不用 open 关键字修饰,抽象类也是可以被继承的,想想也很容易明白,因为抽象类本来就是用来继承的,所以就可以省略open关键字。

接口

接口类的格式如下:

interface  接口类名[: 继承的接口] {……}

例:声明一个接口A,一个接口B,B继承A 

interface A

interface B : A

在Kotlin中的接口可以有自己的实现,例如:

interface KotlinInterface{
     var prop:Int
     fun foo(prop:Int)
     fun bar(){
          println("bar")
     }
}

接口不可以有构造函数

编译器提示接口不能有构造函数,再看一张图:

接口继承

上面是我继承接口后编译器让我覆盖的结果,可以判断出:

Kotlin 接口中函数可以有默认实现,也可以没有
Kotlin 接口允许存在抽象变量
Kotlin 接口的属性只能是抽象的,因为子类必须实现

抽象类与接口就先学到这,有任何疑问请留言与我联系,下次学习可见性修饰符public、private等。进入下一章节

相关文章

  • Kotlin学历之抽象类与接口

    简述 Kotlin 中的抽象类和接口与 Java 8 类似,同样用到abstract、interface关键字,与...

  • Kotlin 类2 - 抽象类与接口

    Kotlin 类2 - 抽象类与接口 1. Kotlin 类、抽象类、接口的规则: 「单继承多现实」即一个类只可以...

  • Kotlin---接口与继承

    接口与抽象类的区别 同样在Kotlin中也有接口的概念,与Java不同的是,Kotlin中的接口可以定义变量,但是...

  • Kotlin接口与SAM函数,以及可见性修饰符

    一、Kotlin接口 Kotlin 的接口可以既包含抽象⽅法的声明也包含实现。与抽象类不同的是,接口⽆法保存状态。...

  • 抽象类和接口

    接口:代表的是事物的能力抽象类:反映的是事物的本质 kotlin中的接口 kotlin中的抽象类 kotlin中实...

  • kotlin接口

    借鉴Kotlin中文站 接口 Kotlin 的接口可以既包含抽象方法的声明也包含实现。与抽象类不同的是,接口无法保...

  • Kotlin学习之抽象类和接口

    Kotlin学习之抽象类和接口 抽象类和接口是面向对象的高级特性。 一、抽象类 类和其中的某些成员可以声明为abs...

  • About Kotlin-Kotlin中的类2

    About Kotlin(2) 继续昨天的部分。介绍Kotlin中的类。 Kotlin中的类 抽象类和接口 抽象类...

  • 【第7篇】Kotlin接口的详解

    1、接口 Kotlin 的接口与 Java 8 类似,既包含抽象方法的声明,也包含实现。与抽象类不同的是,接口无法...

  • Kotlin——面向对象(4)

    1、面向对象-抽象类与接口 1)什么是接口接口,直观理解就是一种约定kotlin的接口与Objcet-C的Prot...

网友评论

    本文标题:Kotlin学历之抽象类与接口

    本文链接:https://www.haomeiwen.com/subject/fwtlqxtx.html