#unittest { name: "Test classes with both static and non static members."; error: NONE; result: 9999; }; // nothing class c0 { func sum() { var a = 1, b=2, c=3; return a + b + c; } } // constructor only class c1 { var a; var b; var c; func init() {a = 10; b = 20; c = 30;} func sum() {return a + b + c;} } // init special only class c2 { var a = 100; var b = 200; var c = 300; func sum() {return a + b + c;} } // both init special and constructor class c3 { var a = 1000; var b; var c; func init() {b = 2000; c = 3000;} func sum() {return a + b + c;} } // mixed static and non static class c4 { static func sum1(){return 1111;} func sum2(){return 2222;} } func main() { var obj0 = c0(); var obj1 = c1(); var obj2 = c2(); var obj3 = c3(); var obj4 = c4(); return obj0.sum() + obj1.sum() + obj2.sum() + obj3.sum() + obj4.sum2() + c4.sum1(); }