当前位置:网站首页 > 编程语言 > 正文

仓颉语言是什么意思_最常用的编程语言

类和接口

仓颉支持使用传统的类(class)和接口(interface)来实现面向对象范式编程。仓颉语言只允许单继承,每个类只能有一个父类,但可以实现多个接口。每个类都是Object的子类(直接子类或者间接子类)。此外,所有的仓颉类型(包括Object)都隐式的实现Any接口。

仓颉提供open修饰符,来控制一个类能不能被继承,或者一个对象成员函数能不能被子类重写(override)。

在下面的例子中,类 B 继承了类 A,且同时实现了接口 I1 和 I2。为了让 A 能够被继承,它的声明需要被open修饰。类 A 中的函数f也被open修饰,因此可以在 B 中被重写。对函数f的调用会根据对象具体的类型来决定执行哪个版本,即动态派遣

 

open class A {    let x: Int = 1    var y: Int = 2     open func f(){        println("function f in A")    }     func g(){        println("function g in A")    }}   interface I1 {    func h1()} interface I2 {    func h2()} class B <: A & I1 & I2 {    override func f(){        println("function f in B")    }     func h1(){        println("function h1 in B")    }     func h2(){        println("function h2 in B")    }} main() {    let o1: I1 = B()    let o2: A = A()    let o3: A = B()     o1.h1() // "function h1 in B"    o2.f()  // "function f in A"    o3.f()  // 动态派遣,"function f in B"    o3.g()  // "function g in A"}

仓颉的 interface 之间也可以继承,并且不受单继承的约束,即一个 interface 也可以继承多个父 interface。如下示例,I3可以同时继承I1和I2。因此,若要实现I3,需要提供对f、g和h三个函数的实现。

interface I1 {    func f(x: Int): Unit} interface I2 {    func g(x: Int): Int} interface I3 <: I1 & I2 {    func h(): Unit}
到此这篇仓颉语言是什么意思_最常用的编程语言的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 最好学的编程语言是什么_学编程那种语言更好2024-11-09 09:00:09
  • 怎样学好一门编程语言_新手怎么开始学编程软件2024-11-09 09:00:09
  • 仓颉编程语言曝光图_华为中文编程仓颉官网2024-11-09 09:00:09
  • 最好学的编程软件_哪种编程语言最难学2024-11-09 09:00:09
  • 仓颉原生应用编程语言教程(第1期)2024-11-09 09:00:09
  • 仓颉编程语言官网_各种编程语言的特点2024-11-09 09:00:09
  • 如何学会一门新的编程语言2024-11-09 09:00:09
  • 编程语言中语句的本质(javascript版)2024-11-09 09:00:09
  • 最好学的编程语言是什么_七大编程语言难度排名2024-11-09 09:00:09
  • ArkTS 编程语言中的垃圾回收模型:分代式 GC 详解2024-11-09 09:00:09
  • 全屏图片