Пожалуйста, не берите в голову, что название не могло придумать лучшего.Пожалуйста, измените его, если у вас есть предложения.Я пытаюсь выяснить, что здесь происходит.Допустим, у меня есть класс test.java
class test{
public static void main(String[] args){
for(int i=0;i<8;i++){
new Testing().run();
}
}
}
И класс Testing.java
class Testing{
private static String str = "";
public void run(){
if(str.equals("")){
str = "ten";
}else{
str = "five";
}
System.out.println(str);
}
}
Так что каждый раз при выполнении цикла и при создании объекта Testing не следуетповторно присвоить статическое строковое значение ""
и вывести ten
?Вывод, который я получаю:
ten
five
five
five
five
five
five
five
Разве вывод не должен быть ten
все время из-за нового объекта тестирования и переназначения значения статической строки?