首页 > 学院 > 开发设计 > 正文

Groovy动态类型

2019-11-08 20:17:33
字体:
来源:转载
供稿:网友

Groovy动态类型

Groovy方法属于动态类型,只有在调用时才会检查。并且Groovy提供了respondsTo方法来检查是否存在该方法。
class Rectangle {    void draw() {        PRintln "Rectangel draw"    }}class Circle {    void draw() {        println "Circle draw"    }    def getRadius() {        return 10    }}class Oval {    void draw() {        println "Oval draw"    }}void draw(shape) {    shape.draw()        if (shape.metaClass.respondsTo(shape, "getRadius")) {        println "radius = ${shape.getRadius()}"    }}draw(new Rectangle())draw(new Circle())draw(new Oval())// 返回Rectangel drawCircle drawradius = 10Oval draw
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表