Назад к вопросам
JuniorТеорияЧасто
Что произойдёт при компиляции и запуске программы?
public class Main {
public static void main(String[] args) {
Account acc = new Account();
acc.deposit(100);
System.out.println(acc.balance);
}
}
class Account {
private int balance;
void deposit(int amount) { balance += amount; }
}Не скомпилируется
- Ждать
100:privateзакрываетbalanceот всех других классов, аMain— другой класс, хоть и в том же файле. - Ждать ошибку при запуске: права доступа проверяет компилятор, и он сообщает
balance has private access in Account.
- Как дать
mainузнать баланс, не открывая поле? - Какие классы видят поле, объявленное без модификатора доступа?