java-Scala-AbstractSeq如何减少字节码大小
作者:互联网
我正在浏览scaladocs并遇到AbstractSeq类.他们形容为
Seq特征的显式实例化以减少子类中的类文件大小.
这如何减少子类的文件大小?子类将获得所有方法,对吗?有人可以解释这是如何工作的
解决方法:
当直接扩展特征时,该类将为每个方法都具有在特征中实现的方法.
假设您有N种方法在Seq中实现(并且特质Seq本身是扩展的).如果您有M个扩展Seq的类,则它们需要M * N个方法.当他们扩展AbstractSeq时,AbstractSeq有N个方法,所有其他类都继承它们.因此,您需要为(M-1)* N个更少的方法折衷1个额外的类.
标签:scala,java,bytecode 来源: https://codeday.me/bug/20191025/1931826.html