Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Привет, какой аналог статической переменной из C++ для Java? Пример внутри

tenzoriator Знаток (308), на голосовании 1 год назад
 static long sum(int n, long total) {
"static" boolean exitConditionMet = false;
if(n == 1) {
exitConditionMet = true;
return 1;
} else {
return total + sum(n-1, total);
}
}
Мне нужно выполнять другой код если эта переменная true. И ее адрес не должен меняться для всех рекурсивных вызовов. Мой код другой но этот я привел для примера, не обращайте внимания на ошибки, это только пример для понимания моей задачи

Вы можете предложить использовать параметр, но я не хочу такой вариант

Реально ли средствами Java такого добиться? Надеюсь я доступно объяснил
Дополнен 1 год назад
статическое поле класса я тоже не хочу
Голосование за лучший ответ
Оракул Оракул (62089) 1 год назад
Объявите статическое поле класса (вне метода)
Мало ли что вы хотите? Используйте то, что возможно, либо создайте свой язык со своими хотелками
tenzoriatorЗнаток (308) 1 год назад
статическое поле создает зависимость от класса, чтобы использовать то что возможно мне сначала нужно узнать что вообще возможно
Андрей Панарин Искусственный Интеллект (249316) 1 год назад
В Java статические переменные бывают внутри класса, но не внутри метода.
Одна общая переменная на весь класс и все его экземпляры. Своеобразный социализм.

Person.java:
 public class Person {
private static long count = 0;

private String name;

public Person(String name) {
this.name = name;
count++;
}

public static long getCount() {
return count;
}
}


Main.java:
 public class Main {
public static void main(String[] args) {
System.out.println("Было людей: " + Person.getCount());
Person misha = new Person("Миша");
Person olga = new Person("Оля");
System.out.println("Стало людей: " + Person.getCount());
}
}
Александр Искусственный Интеллект (301635) 1 год назад
даже глядя на ваш пример кода... волосы дыбом встают от ужаса...
зачем нужен exitConditionMet ?
что-то вы в рекурсиях не особо...
tenzoriatorЗнаток (308) 1 год назад
конечно, я же только учусь. к тому же я сказал что задача у меня другая, а еще я сказал не обращайте внимания на ошибки. какой шарящий идиот будет задавать вопросы на мейле???
Похожие вопросы