Qubc
@Qubc
Ненавижу полисемию.

Что такое Exception in thread «main» java.lang.NoSuchFieldError: data at HelloApp.main(HelloApp.java:12)?

// HelloApp.java
class Vehicle {
    int data;
    void meth(){
         System.out.println("Resutl is " + data);
    }
}
class HelloApp {
    public static void main(String args[]) {
        System.out.println("WTF");
        Vehicle car = new Vehicle();
        // car.data = 123;// Ошибка
        // car.meth(); // Ошибка
    }
}

Если скомпилировать в обычном терминале - то всё работает нормально. Но если запустить через VC - то возникает ошибка.
  • Вопрос задан
  • 84 просмотра
Решения вопроса 1
@Dementor
программист, архитектор, аналитик
Очевидно, же что компилируется по разному.
1) если хотите явно обращаться к свойствам и методам других классов, то нужно их указывать пабликами.
2) дефолтный уровень (обычно!) это уровень пакета, но в листинге я не вижу единого для двух классов объявление пакета - javac с дефолтными настройками все правильно понимает, а для VC (волков командер???) нужна явна подсказка - хз какие он ключи передает компилятору.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Bell Integrator Хабаровск
До 400 000 ₽
Bell Integrator Ульяновск
До 400 000 ₽
Bell Integrator Ижевск
До 400 000 ₽