Есть ли преимущество во время выполнения для импорта статических методов по сравнению с вызовом статического class.method () по мере необходимости?
Пример ...
package com;
public class TestMain {
public static void main(String[] args) {
TestOne firstTester = new TestOne();
TestTwo secondTester = new TestTwo();
firstTester.setVars();
firstTester.setVarSum();
firstTester.printVarSum();
secondTester.setVars();
secondTester.setVarSum();
secondTester.printVarSum();
}
}
package com;
public abstract class TestSubMethods {
public static int getMethodOne(){return 1;}
public static int getMethodTwo(){return 2;}
public static int getMethodThree(){return 3;}
public static int getMethodFour(){return 4;}
}
----------------------------------------------- --------------------
package com;
public class TestOne {
private int varOne;
private int varTwo;
private int varThree;
private int varFour;
private int varSum;
public void setVars() {
this.varOne = TestSubMethods.getMethodOne();
this.varTwo = TestSubMethods.getMethodTwo();
this.varThree = TestSubMethods.getMethodThree();
this.varFour = TestSubMethods.getMethodFour();
}
public void setVarSum() {
this.varSum = this.varOne + this.varTwo + this.varThree + this.varFour;
}
public void printVarSum() {
System.out.println("varSum = " + this.varSum);
}
}
----- против -----
package com;
import static com.TestSubMethods.*;
public class TestTwo {
private int varOne;
private int varTwo;
private int varThree;
private int varFour;
private int varSum;
public void setVars() {
this.varOne = getMethodOne();
this.varTwo = getMethodTwo();
this.varThree = getMethodThree();
this.varFour = getMethodFour();
}
public void setVarSum() {
this.varSum = this.varOne + this.varTwo + this.varThree + this.varFour;
}
public void printVarSum() {
System.out.println("varSum = " + this.varSum);
}
}
Между "TestOne" и "TestTwo" Есть ли предпочтительный стиль? Один из них быстрее, чем другой? Я собирался использовать «extends TestSubMethods», но было рекомендовано, чтобы я этого не делал.