diff options
Diffstat (limited to 'Examples/javascript/class/runme.js')
-rw-r--r-- | Examples/javascript/class/runme.js | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/Examples/javascript/class/runme.js b/Examples/javascript/class/runme.js index 6a77b8d8e..9808910fb 100644 --- a/Examples/javascript/class/runme.js +++ b/Examples/javascript/class/runme.js @@ -7,6 +7,12 @@ c = new example.Circle(10); console.log("Created circle " + c); s = new example.Square(10); console.log("Created square " + s); +try { + new example.Shape(); + console.error("Should have thrown"); +} catch { + console.log("Instantiating abstract class Shape failed"); +} // ----- Access a static member ----- console.log("\nA total of " + example.Shape.nshapes + " shapes were created"); // access static member as properties of the class object @@ -21,6 +27,15 @@ c.y = 30; s.x = -10; s.y = 5; +// ----- Check inheritance ----- +console.log("Square instanceof Shape: ", s instanceof example.Shape); +console.log("Square instanceof Circle: ", s instanceof example.Circle); +console.log("Square instanceof Square: ", s instanceof example.Square); + +// ----- Use an inherited method ----- +s.move(1, 1); +c.move(-1, -1); + console.log("\nHere is their new position:"); console.log("Circle = (" + c.x + "," + c.y + ")"); console.log("Square = (" + s.x + "," + s.y + ")"); |