Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/30: Рейтинг темы: голосов - 30, средняя оценка - 4.80
10 / 10 / 1
Регистрация: 07.04.2011
Сообщений: 568
Записей в блоге: 1
1

Получить доступ из метода к приватной статической переменной и изменить ее

18.04.2014, 07:15. Показов 5616. Ответов 5
Метки нет (Все метки)

Добрый день
как можно получить доступ из метода в приватный статическую переменную и изменить его.
Java
1
2
3
4
5
6
7
8
public class Cat {
    private static int catsCount = 0;
 
    public static void addNewCat() {
        //add your code here
        Cat.catsCount = Cat.catsCount + 1;
    }
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.04.2014, 07:15
Ответы с готовыми решениями:

Как разумно получить доступ к приватной переменной
Есть в классе приватная переменная clientName. Мне нужно защитить ее так, чтобы для внешних классов...

В чем смысл приватной статической переменной?
Private static int AnyNumber собственно сабж, только что в видео увидел без объяснений. В чем...

Как получить доступ к переменной из другого метода с++
Хочу чтоб вводились дни по месяцам, например если февраль то не может быть в месяце 30 дней. Сделал...

Как получить значение приватной переменной из другого класса?
Например есть код: class B { private int i = 22; } class A { // тут код который...

5
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16831 / 6709 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
18.04.2014, 07:29 2
ELDQS, откуда получить доступ? Ведь внутри класса получает же, проверьте сами:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class Test {
    private static int catsCount = 0;
 
    public static void addNewCat() {
        //add your code here
        ++Cat.catsCount;
    }
 
    public static void main(String [] args)
    {
        System.out.println(catsCount);
        addNewCat();
        System.out.println(catsCount);
        addNewCat();
        System.out.println(catsCount);
    }
}
1
10 / 10 / 1
Регистрация: 07.04.2011
Сообщений: 568
Записей в блоге: 1
18.04.2014, 07:32  [ТС] 3
да доступ был я знал это, но вот изменить его почему то не получилось,
а почему тогда она не работает при cat.catscount++, и при обычном прибавлении, тоже не работает.
ведь почти тоже самое, это как то связано с тем что она статическая
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16831 / 6709 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
18.04.2014, 07:37 4
ELDQS, работает. Хоть так, хоть так.

Получить доступ из метода к приватной статической переменной и изменить ее
Получить доступ из метода к приватной статической переменной и изменить ее
Получить доступ из метода к приватной статической переменной и изменить ее


Ищите, где накосячили..
0
10 / 10 / 1
Регистрация: 07.04.2011
Сообщений: 568
Записей в блоге: 1
18.04.2014, 08:43  [ТС] 5
я думал что нельзя изменять статические данные или хотя бы меняются особым образом, но в чем тогда роница обычной и статической переменной
0
942 / 686 / 229
Регистрация: 28.04.2013
Сообщений: 1,924
18.04.2014, 11:28 6
ELDQS, вы, похоже, путаете понятия статическая переменная (static) и константа (final).
Главное отличие статической переменной от обычной в том, что она общая для всех объектов (экземпляров) этого класса.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class Main{
    private int i;
    private static int staticI = 0;
 
    public Main(int i) {
        this.i = i;
    }
 
    public static void main(String[] args) {
        Main a = new Main(100);
        Main b = new Main(200);
        a.staticI = 3;
        System.out.println(a.staticI);
        System.out.println(a.i);
 
        System.out.println(b.staticI);
        System.out.println(b.i);
    }
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.04.2014, 11:28

Новое окно+виджет. Как получить доступ к переменной из другой функции (метода) этого же класса?
QMainWindow* secondWindow = new QMainWindow(this); ...

Как получить доступ к переменной находящейся в одном методе из другого метода в пределах одного класса
Привет всем! Очередной вопрос новичка, допустим, у меня есть метод 1, в котором назначена...

Доступ к статической переменной-члену
Всем доброго время суток задали написать программу, в которой доступ к статической переменной-члену...

Классы: как из статического метода обратиться к статической переменной класса
Классы: как из статического метода обратиться к статической переменной класса


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru