Scala 从性能POV在方法内部定义类

Scala 从性能POV在方法内部定义类,scala,Scala,我有一个方法需要返回一个迭代器。然后我在该方法中定义了一个CustomIterator类,并创建它的实例作为返回值 它看起来不错,因为只有该方法需要了解CustomIterator。但我担心如果这会产生太多的类实例,因为scala的类型系统是路径相关的。每个类声明将只产生一个类文件(即,如果它不包含内部类或匿名函数本身),所以您不必担心这一点。此外,除非您的程序应该在有限的环境中运行,否则额外的类不会导致任何性能问题。在任何情况下,在尝试这种过早的优化之前,都应该对程序进行概要分析 我不知道你所

我有一个方法需要返回一个
迭代器
。然后我在该方法中定义了一个
CustomIterator
类,并创建它的实例作为返回值


它看起来不错,因为只有该方法需要了解
CustomIterator
。但我担心如果这会产生太多的
实例,因为scala的类型系统是路径相关的。

每个
声明将只产生一个类文件(即,如果它不包含内部类或匿名函数本身),所以您不必担心这一点。此外,除非您的程序应该在有限的环境中运行,否则额外的类不会导致任何性能问题。在任何情况下,在尝试这种过早的优化之前,都应该对程序进行概要分析

我不知道你所说的“路径相关类型系统”是什么意思。它是路径依赖类型吗?如果是这样,这是一个完全不相关的概念,它只存在于Scala类型系统中,不会影响实际的类生成