Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
18
Task/Polymorphism/Groovy/polymorphism-1.groovy
Normal file
18
Task/Polymorphism/Groovy/polymorphism-1.groovy
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
@Canonical
|
||||
@TupleConstructor(force = true)
|
||||
@ToString(includeNames = true)
|
||||
class Point {
|
||||
Point(Point p) { x = p.x; y = p.y }
|
||||
void print() { println toString() }
|
||||
Number x
|
||||
Number y
|
||||
}
|
||||
|
||||
@Canonical
|
||||
@TupleConstructor(force = true)
|
||||
@ToString(includeNames = true, includeSuper = true)
|
||||
class Circle extends Point {
|
||||
Circle(Circle c) { super(c); r = c.r }
|
||||
void print() { println toString() }
|
||||
Number r
|
||||
}
|
||||
8
Task/Polymorphism/Groovy/polymorphism-2.groovy
Normal file
8
Task/Polymorphism/Groovy/polymorphism-2.groovy
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
def p = new Point(x: 3, y: 4)
|
||||
def c = new Circle(x: 4, y: 3, r: 5)
|
||||
|
||||
[(p): new Point(p), (c): new Circle(c)].each { v1, v2 ->
|
||||
print "Verifying $v1 == "
|
||||
v2.print()
|
||||
assert v1 == v2
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue