Класс сбрасывает переменную - PullRequest
0 голосов
/ 24 мая 2018

У меня есть такой класс

class UserInfo {
  String userName;
  String userAddress;
  String userCity;
  int userPhone;
}

Внутри приложения я использую такой класс

UserInfo user;
user.userName = "Mani";
user.userAddress = "No12, XYZ Street";
user.userCity = "WorldCity";
user.userPhone = 1234567;

Когда я устанавливаю значения, он работает нормально.В середине приложения я хочу изменить значение одного телефона с 1234567 на 5555555 (все остальные значения одинаковы) в другом модуле.

Я пытался изменить это как

UserInfo user;
user.userPhone = 5555555;

Это дает ошибку, может кто-нибудь сказать мне, как это сделать правильно.

Ответы [ 2 ]

0 голосов
/ 24 мая 2018
UserInfo user;

только объявляет переменную.Эта переменная еще не ссылается на значение.

Это должно быть

UserInfo user = new UserInfo();

Если вы позже используете в другом месте

UserInfo user;
user.userPhone = 5555555;

, вы объявляете другое user экземпляр, который снова не инициализирован с конкретным значением.

Если вы хотите повторно использовать первую переменную user, вам необходимо импортировать библиотеку (файл), в которой она содержится.

0 голосов
/ 24 мая 2018

Если вы действительно вызываете этот код:

UserInfo user;
user.userPhone = 5555555;

, это означает, что вы переделываете переменную с именем user, но ничего не создаете.И поэтому вы, скорее всего, получаете исключение Null Pointer Exception, пытаясь изменить значение userPhone.

...