Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.81/77: Рейтинг темы: голосов - 77, средняя оценка - 4.81
17 / 3 / 0
Регистрация: 14.12.2010
Сообщений: 77
1

Взятие значение переменной из другого класса.

11.04.2012, 12:12. Просмотров 13920. Ответов 6
Метки нет (Все метки)

- Здравствуйте. Что-то мне подсказывает, что моя проблема слишком детская. Но так уж и быть, спрошу здесь. Попрошу сильно не смеяться, если что.
В общем, есть код программы. Собственно вот он:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
package pkg9lk;
 
import java.util.Scanner;
 
 
/**
 *
 * @author Администратор
 */
public class Main {
 
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        int vub;
        Scanner scan = new Scanner(System.in);
        System.out.println("Введіть 1 - для вибору типу ЕПТ-телевізори,"  + "\nВведіть 2 - для вибору типу LCD(ЖК)-телевізори," +  "\nВведіть 3 - для вибору типу «плазма».");
        vub = scan.nextInt();
        if(vub == 1){ 
                        System.out.println("Введіть розмір діагоналі вашого ЕПТ-телевізору:");
                        int e = scan.nextInt();
        }
        else if(vub == 2){
                        System.out.println("Введіть розмір діагоналі вашого LCD(ЖК)-телевізору:");
                        int lcd = scan.nextInt();
        }
        else if(vub == 3){
                        System.out.println("Введіть розмір діагоналі вашої «плазми»:");
                        int pl = scan.nextInt();
        }
    }
    
}
class Epttv {
    Main my = new Main();
    int d = my.e * 2;
   
}
- возникает проблема, когда я в классе Epttv хочу использовать переменную e. если не трудно, то укажите на ошибку. А то гуглил и ничего не нашел. Ну или плохо гуглил...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.04.2012, 12:12
Ответы с готовыми решениями:

Взятие переменной из другого класса
Возникла небольшая проблемка У меня в 1 классе в переменную заносятся какое-то значение и я хочу...

Получить значение переменной из другого класса
Добрый день! Делаю простенькие часики и столкнулся со следующей проблемой: внутри класса значение...

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

Использование переменной из другого класса
есть класс Getip, узнаю ип и записываю в String ip package AC; import java.net.*; import...

6
Эксперт JavaЭксперт С++
8360 / 3581 / 419
Регистрация: 03.07.2009
Сообщений: 10,708
11.04.2012, 12:48 2
akira_akai, а где в классе Main у вас поле e?
0
17 / 3 / 0
Регистрация: 14.12.2010
Сообщений: 77
11.04.2012, 12:49  [ТС] 3
M128K145, а должно быть отдельное поле для нее? я ее просто огласил с типом int.
0
Эксперт JavaЭксперт С++
8360 / 3581 / 419
Регистрация: 03.07.2009
Сообщений: 10,708
11.04.2012, 13:46 4
akira_akai, ааа, вон она где. Ну, во-первых, она локальная и существует только в пределах
Java
1
2
if(vub == 1){ 
}
, а во-вторых, чтобы вот так обратится к переменной - она должна быть public(в некоторых случаях protected или без модификатора) полем класса
Почитайте также и http://www.ibm.com/developerwo... tion8.html
1
Мега Таракан
110 / 11 / 5
Регистрация: 24.05.2010
Сообщений: 227
12.04.2012, 08:05 5
akira_akai объявите свою переменную vub как поле в классе (см. строчку 15 в коде) и объявите методы для установки и возврата значения(getter и setter методы, соответственно у вас это setVub, который устанавливает значение в vub и getVub, который возвращает значение vub)
Просто объявление поля как публичного, и обращение непосредственно к нему это не есть гут) Правильнее сделать, как я описал (сделать его приватным и обращаться к нему с помощью специальных методов). Там, где вам нужно значение переменной vub вы просто вызываете метод getVub и т.д.
вот ваш исправленный код:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
package pkg9lk;
 
import java.util.Scanner;
 
 
/**
 *
 * @author Администратор
 */
public class Main {
 
    /**
     * @param args the command line arguments
     */
    private int vub;
    
    public void setVub(int vub)
    {
      this.vub = vub;
    }
    
    public int getVub()
    {
      return this.vub;
    }
    
    public static void main(String[] args) {
        // TODO code application logic here
        
        Scanner scan = new Scanner(System.in);
        System.out.println("Введіть 1 - для вибору типу ЕПТ-телевізори,"  + "\nВведіть 2 - для вибору типу LCD(ЖК)-телевізори," +  "\nВведіть 3 - для вибору типу «плазма».");
        vub = scan.nextInt();
        if(vub == 1){ 
                        System.out.println("Введіть розмір діагоналі вашого ЕПТ-телевізору:");
                        int e = scan.nextInt();
        }
        else if(vub == 2){
                        System.out.println("Введіть розмір діагоналі вашого LCD(ЖК)-телевізору:");
                        int lcd = scan.nextInt();
        }
        else if(vub == 3){
                        System.out.println("Введіть розмір діагоналі вашої «плазми»:");
                        int pl = scan.nextInt();
        }
    }
    
}
class Epttv {
    Main my = new Main();
    int d = my.getVub() * 2;
   
}

Не по теме:

ЕПТ-телевизор:rofl:

1
M128K145
12.04.2012, 09:32
  #6

Не по теме:

Цитата Сообщение от .: TAPAKAH :. Посмотреть сообщение
ЕПТ-телевизор
укр. - електронно-променева трубка

1
0 / 0 / 0
Регистрация: 05.02.2017
Сообщений: 1
06.02.2017, 19:33 7
День добрый прошло довольно много времени. Столкнулся с подобной проблемой , код выше не рабочий , даже тот который исправленный выкидывает ошибки "..non-static variable vub cannot be referenced..." . Есть кто , кто бы смог глянуть. Заранее благодарю.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.02.2017, 19:33

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

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

Использование переменной из другого класса
Как при нажатии на кнопку использовать переменную из другого класса? Есть код проекта, схематично...

Как обратиться к переменной другого класса
Здравствуйте! Подскажите пожалуйста: как обратиться к переменной из одного класса находясь в...

Как обратиться к переменной из другого класса?
Как получить значение spinnerOfHeight package net.net78.zarsite; import...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.