Из-за которого есть несколько import того же книжного магазина

Хорошие я изучаю swing и у меня не остается ясная причина, если я сделал

import java.awt.*;

Потом я должен делать несколько import того же книжного магазина, например

import java.awt.*;
import static java.awt.Color.DARK_GRAY;

public class Main extends Frame{
public static void main(String args []){
    Frame sf =new Frame("Mi ventana");
    sf.setSize(500, 500);
    sf.setVisible(true);
    sf.setBackground(DARK_GRAY);
   }   
}

Я не понимаю, из-за которого я должен определять import java.awt.Color или быть должным помещать в sf.setBackground(Color.DARK_GRAY) для того, чтобы я взял цвет, не предполагается, что первый import он загружает мне все классы книжного магазина awt? Спасибо

5
задан 11.03.2019, 02:59
1 ответ

Линия import static java.awt.Color.DARK_GRAY использует один import estático. Один import estático может быть использованным на mГ©todos или свойства estГЎticas конкретного класса, и позволяет не быть должным показывать класс, использовав их, способствуя читабельности cГіdigo.

AsГ, - если ты cГіdigo не было у этого static import, tendrГ-туз, который было нужно поместить:

import java.awt.*;

public class Main extends Frame{
public static void main(String args []){
    Frame sf =new Frame("Mi ventana");
    sf.setSize(500, 500);
    sf.setVisible(true);
    sf.setBackground(Color.DARK_GRAY);
   }   
}

В этом случае может, чему я не помог слишком много, но в других sГ - что это делает, например:

private List<String> ordenarLista(List<String> lista){
   return aa.stream().sorted(Comparators.nullsLow()).collect(Collectors.toList());
}

aГ±adiendo static imports:

    import static java.util.stream.Collectors.toList;
    import static org.springframework.util.comparator.Comparators.nullsLow;

    private List<String> ordenarLista(List<String> lista){
       return aa.stream().sorted(nullsLow()).collect(toList());
    }

"Нормальный" import избегает помещать тебе полный пакет, когда ты заявляешь / инстанции класс. Восток serГ - в тебя cГіdigo без imports:

public class Main extends java.awt.Frame{
public static void main(String args []){
    java.awt.Frame sf =new java.awt.Frame("Mi ventana");
    sf.setSize(500, 500);
    sf.setVisible(true);
    sf.setBackground(java.awt.Color.DARK_GRAY);
   }   
}
7
ответ дан 19.11.2019, 22:20
  • 1
    Нормальный import избегает быть должным помещать тебе полный пакет класса, чтобы использовать ее, añ ado в ответ. – pablo 11.03.2019, 03:03