| /* |
| * Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license |
| * that can be found in the LICENSE file. |
| */ |
| |
| package runtime.basic.initializers0 |
| |
| import kotlin.test.* |
| |
| class A { |
| init{ |
| println ("A::init") |
| } |
| |
| val a = 1 |
| |
| companion object :B(1) { |
| init { |
| println ("A::companion") |
| } |
| |
| fun foo() { |
| println("A::companion::foo") |
| } |
| } |
| |
| object AObj : B(){ |
| init { |
| println("A::Obj") |
| } |
| fun foo() { |
| println("A::AObj::foo") |
| } |
| } |
| } |
| |
| @Test fun runTest() { |
| println("main") |
| A.foo() |
| A.foo() |
| A.AObj.foo() |
| A.AObj.foo() |
| } |
| |
| open class B(val a:Int, val b:Int) { |
| constructor(a:Int):this (a, 0) { |
| println("B::constructor(" + a.toString()+ ")") |
| } |
| constructor():this(0) { |
| println("B::constructor()") |
| } |
| } |
| |