我可以在外类的内部或从外类派生的类内部延伸的内部类/性状。 我可以延长内部类的外部类中的特定实例的:
class Outer
{
class Inner{}
}
class OtherCl(val outer1: Outer)
{
class InnA extends outer1.Inner{}
}
注意:即使这似乎编译罚款产生非常有趣的可能性:
trait OuterA
{ trait InnerA }
trait OuterB
{ trait InnerB }
class class2(val outerA1: OuterA, val outerB1: OuterB)
{ class Inner2 extends outerA1.InnerA with outerB1.InnerB }
但是,这不会编译:
class OtherCl extends Outer#Inner
至于我可以看到我想其中类型参数是外部类的一个实例,这样的东西的效果,扩展parametrised类
class OtherCl[T where T is instance of Outer] extends T.Inner
所以是不参考延伸的内部类/性状这是一个外性状/类内到外的性状/类的呢?
我不是找实例派生内部类没有外部类的一个实例,只声明其类型。