Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Творение дьявола
 Аватар для Virus dena
23 / 23 / 3
Регистрация: 30.08.2015
Сообщений: 157

Объясните пожалуйста ошибку компиляции

02.11.2015, 13:33. Показов 1007. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
 Комментарий модератора 
Давайте темам осмысленные имена



Помогите пожалуйста, не пойму почему ругается на эту строку?
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class TrafficLightDemo {
    private static Object TrafficLightColor;
    
    public static void main(String args[]){
        TrafficLightSimulator1 tl = 
                new TrafficLightSimulator1(TrafficLightColor.GREEN);//ругается на эту строку
        
        for(int i=0; i<10; i++){
            System.out.println(tl.getColor());
            tl.waitForChange();
        }
        tl.cancel();
    }
}
Предыдущий класс:
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
package trafficlightsimulator;
 
enum TrafficLightColor{
    RED, GREEN, YELLOW
}
 
public class TrafficLightSimulator1 implements Runnable {
    private Thread thrd;
    private TrafficLightColor tlc;
    boolean stop = false;
    boolean changed = false;
 
    TrafficLightSimulator1(TrafficLightColor init){
    tlc = init;
    thrd = new Thread(this);
    thrd.start();
}
 
TrafficLightSimulator1(){
    tlc = TrafficLightColor.RED;
 
    thrd = new Thread(this);
    thrd.start();
}
 
public void run(){
while(!stop){
 
try{
   switch(tlc){
       case GREEN:
           Thread.sleep(30000);
           break;
       case YELLOW:
           Thread.sleep(10000);
           break;
       case RED:
           Thread.sleep(20000);
           break;
   } 
}catch(InterruptedException exc){
    System.out.println(exc);
}
    changeColor();
}
}
synchronized void changeColor(){
    
    switch(tlc){
        case RED:
            tlc = TrafficLightColor.GREEN;
            break;
        case YELLOW:
           tlc = TrafficLightColor.RED; 
            break;
        case GREEN:
            tlc = TrafficLightColor.YELLOW;
    }
    
    changed = true;
    notify();
}
synchronized void waitForChange(){
    try{
        while(!changed)
            wait();
        changed = false;
    }catch(InterruptedException exc){
        System.out.println(exc);
    }
}
 
TrafficLightColor getColor(){
    return tlc;
}
 
void cancel(){
    stop = true;
}
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.11.2015, 13:33
Ответы с готовыми решениями:

Объясните ошибки компиляции
Написал код начальный, для своей работы. Вылазят ошибки в трех местах, в 1й, 4й и последней строках. Выделяю жирным, где мне тычет...

Объясните пожалуйста!
уже час зависаю над задачей, ни черта понять не могу как это сделать. Я умею создавать ссылки на объекты, но то что здесь - это сверх моего...

Объясните пожалуйста
Почему в программке, приведенной ниже, если раскомменитировать строку, это вызовет ошибку? package oata; import java.util.*; ...

17
 Аватар для Alradalion
132 / 126 / 85
Регистрация: 13.09.2013
Сообщений: 485
02.11.2015, 13:57
Я полагаю что
Java
1
private static  TrafficLightColor r;
и
Java
1
2
TrafficLightSimulator1 tl = 
                new TrafficLightSimulator1(r.GREEN);
1
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
02.11.2015, 14:00
Virus dena, ошибку напишите или угадать надо ?
0
Творение дьявола
 Аватар для Virus dena
23 / 23 / 3
Регистрация: 30.08.2015
Сообщений: 157
02.11.2015, 14:17  [ТС]
KEKCoGEN, написано в коде, в комментах - "ругается на эту строку"

Добавлено через 2 минуты
KEKCoGEN, вот ошибка:
Java
1
2
3
4
private static  TrafficLightColor r;
public static void main(String args[]){
        TrafficLightSimulator1 tl = 
                new TrafficLightSimulator1(r.GREEN);//ругается на эту строку
Добавлено через 53 секунды
Alradalion, нет, все равно ругается

Добавлено через 54 секунды
Alradalion, ругается именно на GREEN

Добавлено через 7 минут
0
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
02.11.2015, 14:24
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
public class TrafficLightDemo {
 
    public static void main(String args[]) {
        TrafficLightSimulator1 tl =
                new TrafficLightSimulator1(TrafficLightColor.GREEN);// не ругается на эту строку
 
        for (int i = 0; i < 10; i++) {
            System.out.println(tl.getColor());
            tl.waitForChange();
        }
        tl.cancel();
    }
}
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
enum TrafficLightColor {
    RED, GREEN, YELLOW
}
 
public class TrafficLightSimulator1 implements Runnable {
    private Thread thrd;
    private TrafficLightColor tlc;
    boolean stop = false;
    boolean changed = false;
 
    TrafficLightSimulator1(TrafficLightColor init) {
        tlc = init;
        thrd = new Thread(this);
        thrd.start();
    }
 
    TrafficLightSimulator1() {
        tlc = TrafficLightColor.RED;
 
        thrd = new Thread(this);
        thrd.start();
    }
 
    public void run() {
        while (!stop) {
 
            try {
                switch (tlc) {
                    case GREEN:
                        Thread.sleep(30000);
                        break;
                    case YELLOW:
                        Thread.sleep(10000);
                        break;
                    case RED:
                        Thread.sleep(20000);
                        break;
                }
            } catch (InterruptedException exc) {
                System.out.println(exc);
            }
            changeColor();
        }
    }
 
    synchronized void changeColor() {
 
        switch (tlc) {
            case RED:
                tlc = TrafficLightColor.GREEN;
                break;
            case YELLOW:
                tlc = TrafficLightColor.RED;
                break;
            case GREEN:
                tlc = TrafficLightColor.YELLOW;
        }
 
        changed = true;
        notify();
    }
 
    synchronized void waitForChange() {
        try {
            while (!changed)
                wait();
            changed = false;
        } catch (InterruptedException exc) {
            System.out.println(exc);
        }
    }
 
    TrafficLightColor getColor() {
        return tlc;
    }
 
    void cancel() {
        stop = true;
    }
}
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
02.11.2015, 14:39
Цитата Сообщение от Virus dena Посмотреть сообщение
ругается именно на GREEN
матом ругается или все таки ошибку пишет какую то?
0
Творение дьявола
 Аватар для Virus dena
23 / 23 / 3
Регистрация: 30.08.2015
Сообщений: 157
02.11.2015, 16:16  [ТС]
KEKCoGEN, почему - то именно на меня всегда матом:
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
02.11.2015, 16:23
Цитата Сообщение от Virus dena Посмотреть сообщение
почему - то именно на меня всегда матом
тогда предлагаю вам самому разбираться. Не у всех есть желание переписывать ваш код к себе только чтобы увидеть ошибку компиляции\рантайма тогда как по тексту ошибки можно сразу определить в чем дело.
0
Творение дьявола
 Аватар для Virus dena
23 / 23 / 3
Регистрация: 30.08.2015
Сообщений: 157
02.11.2015, 16:31  [ТС]
KEKCoGEN, выдает - not - static variable GREEN cannot be referenced from a static context
0
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
02.11.2015, 16:58
я готовый код без всяких ошибок выложил, тебе мало этого?
0
Творение дьявола
 Аватар для Virus dena
23 / 23 / 3
Регистрация: 30.08.2015
Сообщений: 157
02.11.2015, 17:15  [ТС]
Паблито, извините, но он с ошибками
0
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
02.11.2015, 17:18
есть доказательства?
0
Творение дьявола
 Аватар для Virus dena
23 / 23 / 3
Регистрация: 30.08.2015
Сообщений: 157
02.11.2015, 17:31  [ТС]
Добавлено через 46 секунд
Паблито, cannot find symbol

Добавлено через 40 секунд
Паблито, выдал эту ошибку
0
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
02.11.2015, 17:31
не верю
0
Творение дьявола
 Аватар для Virus dena
23 / 23 / 3
Регистрация: 30.08.2015
Сообщений: 157
02.11.2015, 17:36  [ТС]
Паблито, кидаю скрин
0
Творение дьявола
 Аватар для Virus dena
23 / 23 / 3
Регистрация: 30.08.2015
Сообщений: 157
02.11.2015, 17:39  [ТС]
кидаю скрин(посмотрите внимательно)
Миниатюры
Объясните пожалуйста ошибку компиляции  
0
Творение дьявола
 Аватар для Virus dena
23 / 23 / 3
Регистрация: 30.08.2015
Сообщений: 157
02.11.2015, 17:47  [ТС]
Паблито, что делать с этой ошибкой?
0
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
02.11.2015, 17:55
ну а где второй файл, который TrafficLightSimulator1 ?
код надо кидать а не скриншоты
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.11.2015, 17:55
Помогаю со студенческими работами здесь

объясните пожалуйста...
import javax.swing.*; import java.awt.event.*; import java.awt.*; import com.bruceeckel.swing.*; public class RadioButtons...

Объясните пожалуйста код
public class Solution { public static void main(String args) { printIdea(new Idea()); //НЕ СОВСЕМ ПОНЯТЕН ЭТОТ...

Объясните функцию пожалуйста
Полностью опишите плииз

Объясните ошибку
Ребята, помогите понять один момент. Пишу такой код: String x = &quot;&quot; + 1 + 2; String y = &quot;12&quot;; System.out.println(x...

Не понимаю ошибку компиляции
Не могу понять почему при компиляции ошибки, что-то не то с названиями классов и пакетов !?!?!*?!? картинка прилогает


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. На мобильном - сканируйте QR-код. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru