Java import или пути?

238
08 сентября 2017, 20:56

Есть переменная (values) в class1 (package1), нужно ее импортировать в class2(package2).

Есть 2 способа:

package package2;
import package1.class1;

или же обратиться на прямую к переменной

package package2;
package1.class1.values...

Какой способ буде быстрее в плане производительности?

P.S. Удобство использования не волнует!

Answer 1

На скорость выполнения программы не повлияет, потому что компилятор все-равно заменит название переменных на полные пути. Например,

package aug;
import static java.lang.System.out;
public class MyClass {
    public static void main(String[] args) {
        out.println("abc");
    }
}

Если посмотреть декомпилятором:

package aug;
public class MyClass {
    public MyClass() {
    }
    public static void main(String[] args) {
        System.out.println("abc");
    }
}

Часть байткода:

 public static main([Ljava/lang/String;)V
   L0
    LINENUMBER 7 L0
    GETSTATIC java/lang/System.out : Ljava/io/PrintStream;
    LDC "abc"
    INVOKEVIRTUAL java/io/PrintStream.println (Ljava/lang/String;)V
   L1
    LINENUMBER 8 L1
    RETURN
   L2
    LOCALVARIABLE args [Ljava/lang/String; L0 L2 0
    MAXSTACK = 2
    MAXLOCALS = 1
}
READ ALSO
Ошибка “Expected BEGIN_OBJECT but was BEGIN_ARRAY” при парсинге Json

Ошибка “Expected BEGIN_OBJECT but was BEGIN_ARRAY” при парсинге Json

Я сделал серверную часть на java, который по ссылке мне выдает JSON - http://13959

303
Как к jDateChooser применить DefaultFormatterFactory

Как к jDateChooser применить DefaultFormatterFactory

На панели есть jDateChooser, есть готовый метод возвращающий DefaultFormatterFactory, как его применить?

220
Аттрибут из сервлета в JSP

Аттрибут из сервлета в JSP

Здравствуйте! Столкнулся с такой проблемой: Мне необходимо создать страницу авторизацииПри аутентификации введенный логин сравнивается...

309
Запуск и остановка java файлов через task scheduler

Запуск и остановка java файлов через task scheduler

Подскажите как правильно запустить java файлы на удаленном компе через task shedulerПробовала сделать двумя способами:

276