| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

SJC-P コンストラクタ

提供: MyMemoWiki
ナビゲーションに移動 検索に移動

SJC-P コンストラクタ

package constructor;

public class ConstructorTest1 {

    public static void main(String[] args) {
        ConstructorTest1 me = new ConstructorTest1();
        me.testConstructor();
    }
    public void testConstructor() {
        System.out.println("### Deriv()");
        Deriv d1 = new Deriv();
        System.out.println("### Deriv(String)");
        Deriv d2 = new Deriv("deriv");
    }
}
class Base {
    static {
        System.out.println("Base static initializer");
    }
    {
        System.out.println("Base initializer");
    }
    protected String name;
    public Base() {
        System.out.println("Base()");
    }
    public Base(String name) {
        System.out.println("Base(String name)");
        this.name = name;
    }
}
class Deriv extends Base {
    static {
        System.out.println("Deriv static initializer");
    }
    {
        System.out.println("Deriv initializer");
    }
    public Deriv() {
        // 明示的に他のコンストラクタを呼び出す(this())場合、super()は呼ばれない
        this("default Deriv"); 
        System.out.println("Deriv()");
    }
    public Deriv(String name) {
        // 暗黙的に super() コンストラクタが呼び出される
        System.out.println("Deriv(String name)");
        this.name = name;
    }
}

{{include_html banner_html, "!SJC-P"}}