Gradle系列知识(四)——Groovy的面向对象

一、类(class)

我们先来定义一个类

class Runner {
    String name
    int age
}

注意groovy中class、以及变量默认都是public的,不用再写。

使用对象

Runner runner = new Runner(name: "Tom",age: 18)
println "我是"+runner.name+"  年龄是"+runner.age

前面Runner 类中我们虽然没有定义有参的构造函数,这样写了后,系统会自动为我们创建含参数的构造函数。
输出结果是

我是Tom  年龄是18
二、接口(interface)

定义一个接口

interface Action {
    void play()
    void eat()
}

groovy定义的接口中,只能申明public的方法。
其他接口的使用跟java 没有区别,一个类实现这个接口后需要实现接口定义的方法。

三、特征(traits)

traits是介于java 中抽象类和接口之间的语法。
我们先定义一个trait

trait TraitAction {
    abstract void eat()
    void play(){
        println("我很会玩")
    }
}

注意:trait 中定义的方法如果不实现,必须定义成抽象的,在前面加abstract。
再看看怎么使用trait

class Runner implements TraitAction{
    String name
    int age

    @Override
    void eat() {
        println("我会吃")
    }
}

使用trait需要用到implements 关键字,同样实现trait定义的抽象方法
Runner 的实例对象既可以调play方法也可以调自己定义的eat方法。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值