Вот условие: Создайте класс Phone (Телефон) одним из свойств должен быть его номер. Создайте класс Network (сеть мобильного оператора). В классе Телефон должны быть описаны следующие методы: ● Регистрация в сети мобильного оператора ● Метод реализующий исходящий звонок. Данный метод принимает один параметр (описывающий номер мобильного телефона). Логика работы этого метода такова: если текущий телефон не прошел регистрацию в сети, то закончить работу метода с сообщением об этом. Если текущий телефон прошел регистрацию и в сети также зарегистрирован телефон на номер которого совершается вызов, то вызвать метод входящий звонок у того телефона. Если телефон на номер которого вы совершаете вызов в сети не зарегистрирован, то закончить работу метода с сообщением об этом. ● Метод реализующий входящий звонок. Принимает параметр в виде номера с которого произвели вызов на текущий. Вывести сообщение вида вам звонит номер такой то public class Main { public static void main(String[] args) { Network network = new Network(); Phone phone1 = new Phone(380684657399L); network.registrationOfNewAbonent(phone1); Phone phone2 = new Phone(380679861245L); network.registrationOfNewAbonent(phone2); phone1.call(380684657399L); } } class Network { Phone[] phones = new Phone[100]; public void registrationOfNewAbonent(Phone phone) { for (int i = 0; i < phones.length; i++) { if (phones[i] != null) { continue; } else { phones[i] = new Phone(phone.getNumber()); break; } } } public boolean checkRegistration(long number) { for (int i = 0; i < phones.length; i++) { if (phones[i] == null) continue; if (number == phones[i].getNumber()) { return true; } } return false; } } class Phone { private long number; private Network network = new Network(); Phone(long number) { this.number = number; } public long getNumber() { return number; } public void setNumber(long number) { this.number = number; } public void incomingCall(long number) { System.out.println("The abonent " + number + " is calling you"); } public void call(long numberReceive) { if ((network.checkRegistration(this.number)) == true) { // Вот здесь всё время false. Я интуитивно понимаю, что // проблема в поле Network network = new Network(), но // как исправить не пойму. Если оставить просто // Network network; то выкидывает NullPointerException if (network.checkRegistration(numberReceive) == true) { incomingCall(this.number); } else { System.out.println("The abonent you calling is not registered in network"); } } else { System.out.println("You are not registered in network"); } } }