2013-10-23 13 views
5

ZCzy rekursywny jest import scala?

import mypack._ 

mogę nadal trzeba

import mypack.box.writer 
import mypack.box.reader 

i

import mypack.box.parser.stringparser 

?

Jakie jest odpowiednie słowo kluczowe do wyszukiwania/google? "Recursive" daje mi przytłaczające wyniki "rekurencji ogona".

+0

"Rekurencyjny" wydaje się tutaj nieistotny. "Podsycanie", być może lub prawdopodobnie "przechodnie". W każdym razie, jak Daniel odpowiada, nie ma żadnych drugich ani głębszych efektów importowania. Inną rzeczą, której nie robi, jest dodanie czegokolwiek do zewnętrznej widocznej zawartości przestrzeni nazw (w tym, gdy import pojawia się wewnątrz bloku definicji typu lub wartości). –

Odpowiedz

10

Nie, import Scala nie jest rekursywny.

Pakiety służą do utrzymywania przestrzeni nazw w bieżącym zakresie w czystości. Importowanie wszystkich podpakietów domyślnie byłoby sprzeczne z tym.

Z drugiej strony przywóz są względne, więc można to zrobić:

import mypack._ 
import box.writer 
import box.reader 
import box.parser.stringparser 

Niektórzy ludzie nie lubią tego stylu, jak to jest trochę błędów. Nie podoba mi się to, ponieważ nie ma wyraźnego rozróżnienia pomiędzy importem bezwzględnym a względnym. Mimo to czasami pomaga.

Powiązane problemy