001package beginner; 002 003 004import com.sandwich.koan.Koan; 005 006import static com.sandwich.koan.constant.KoanConstants.__; 007import static com.sandwich.util.Assert.assertEquals; 008 009public class AboutConstructors { 010 011 class A { 012 String someString = "a"; 013 014 public A() { 015 someString += "x"; 016 } 017 018 } 019 020 class B extends A { 021 public B() { 022 someString += "g"; 023 } 024 025 } 026 027 @Koan 028 public void simpleConstructorOrder() { 029 assertEquals(new B().someString, __); 030 } 031 032 class Aa { 033 String someString = "a"; 034 035 public Aa() { 036 someString += "x"; 037 } 038 039 public Aa(String s) { 040 someString += s; 041 } 042 } 043 044 class Bb extends Aa { 045 public Bb() { 046 super("Boo"); 047 someString += "g"; 048 } 049 050 } 051 052 @Koan 053 public void complexConstructorOrder() { 054 assertEquals(new Bb().someString, __); 055 } 056 057}