Một mẫu tiêu chuẩn được sử dụng trong thư viện lớp Scala là định nghĩa các lớp trong các lớp và các đặc điểm. Và hầu hết các hoạt động của các đối tượng của các lớp cha đều dẫn đến các đối tượng của các lớp bên trong đó được tạo ra. Mỗi lớp bên trong là khác nhau cho mỗi đối tượng.Ảnh hưởng của các định nghĩa lớp Scala trên không gian gen perm
ví dụ: Xem nguồn cho scala.io.Source và LineIterator. Tôi nghĩ đây là thư viện đơn giản nhất trong thư viện chuẩn.
Như các tài liệu đề xuất dưới đây là hai lớp khác nhau.
val s1:Source = ...
val s2:Source = ...
s1.getLines.getClass != s2.getLines.getClass //true if s1 != s2
Có nghĩa là hai lớp được tạo.
Vì toàn bộ thư viện bộ sưu tập đang sử dụng cùng một mẫu, các hiệu ứng trên không gian permgen cho các quy trình chạy dài là gì?