implementing superclasses (ch29)
This commit is contained in:
21
samples/ch29_superclass.lox
Normal file
21
samples/ch29_superclass.lox
Normal file
@ -0,0 +1,21 @@
|
||||
class Doughnut {
|
||||
cook() {
|
||||
print "Dunk in the fryer.";
|
||||
}
|
||||
|
||||
zzz() {
|
||||
print "Bla";
|
||||
}
|
||||
}
|
||||
|
||||
class Cruller < Doughnut {
|
||||
finish() {
|
||||
print "Glaze with icing.";
|
||||
}
|
||||
}
|
||||
|
||||
var o2 = Cruller();
|
||||
o2.cook();
|
||||
o2.finish();
|
||||
|
||||
|
19
samples/ch29_superclass2.lox
Normal file
19
samples/ch29_superclass2.lox
Normal file
@ -0,0 +1,19 @@
|
||||
class A {
|
||||
method() {
|
||||
print "A method";
|
||||
}
|
||||
}
|
||||
|
||||
class B < A {
|
||||
method() {
|
||||
print "B method";
|
||||
}
|
||||
|
||||
test() {
|
||||
this.method();
|
||||
super.method();
|
||||
}
|
||||
}
|
||||
|
||||
class C < B {}
|
||||
C().test();
|
2
samples/ch29_superclass_error.lox
Normal file
2
samples/ch29_superclass_error.lox
Normal file
@ -0,0 +1,2 @@
|
||||
class Cake < Cake {
|
||||
}
|
2
samples/ch29_superclass_error2.lox
Normal file
2
samples/ch29_superclass_error2.lox
Normal file
@ -0,0 +1,2 @@
|
||||
var NotClass = "So not a class";
|
||||
class OhNo < NotClass {}
|
Reference in New Issue
Block a user