Na logikę niby tak, ale w praktyce jednak wygląda to następująco... Prosta klasa:
import javax.swing.*;
public class Klasa {
public static void main(String args[]) {
System.out.println("Hello World!");
}
}
Zajmuje 142 bajty przed kompilacją. Zmiana importu na javax.swing.JLabel zwiększy objętość pliku do 147 bajtów, na javax.swing.JButton na 148 bajtów, a wykorzystanie obu importów (JLabel + JButton) skutkuje zwiększeniem objętości pliku Klasa.java do 176 bajtów :) Dlaczego? Ilość znaków w wyrażeniu "import javax.swing.JButton" jest brana pod uwagę, a nie to, co ten pakiet w sobie zawiera itd. A teraz jak wygląda sprawa po kompilacji? Nieważne ile importów wklepiemy z pakietu javax.swing, to skompilowany plik (.class) będzie miał objętość 416 bajtów, dopóki nie utworzymy jakiegoś obiektu z zaimportowanych pakietów. Dlaczego? Bo instrukcja import umożliwia po prostu uwidacznianie konkretnych klas i pakietów, a także jest prawdę mówiąc pomocą jedynie dla programisty, bo nie musi być stosowana jako taka. Z punktu widzenia samego języka nie trzeba jej stosować w żadnym z programów. Jednak, gdy korzysta się wielokrotnie podczas pisania z tych samych klas, to import pozwala zaoszczędzić sporo czasu na skrobaniu. Tak więc z uwagi na oszczędność w czasie stosuj skróty typu "import javax.swing.*;" :)
Pozdrawiam.