Учебники по Java

Ява ГЛАВНАЯ Введение в Java Начало работы с Java Синтаксис Java Java-комментарии Java-переменные Типы данных Java Приведение типов Java Операторы Java Java-строки Java-математика Логические значения Java Java, если...иначе Java-переключатель Java-цикл во время выполнения Java для цикла Перерыв/продолжение Java Массивы Java

Java-методы

Java-методы Параметры метода Java Перегрузка метода Java Область применения Java Java-рекурсия

Java-классы

Java ООП Классы/объекты Java Атрибуты класса Java Методы класса Java Конструкторы Java Модификаторы Java Инкапсуляция Java Java-пакеты/API Наследование Java Java-полиморфизм Внутренние классы Java Java-абстракция Java-интерфейс Перечисления Java Пользовательский ввод Java Дата Java Список массивов Java Связанный список Java Java HashMap Набор хэшей для Java Java-итератор Классы-оболочки Java Исключения Java Java регулярное выражение Java-потоки Java-лямбда

Обработка файлов Java

Java-файлы Создание/запись файлов Java Файлы чтения Java Java Удалить файлы

Java Как

Добавить два числа

Справочник по Java

Ключевые слова Java Строковые методы Java Java математические методы

Примеры Java

Примеры Java Компилятор Java Java-упражнения Java-викторина Java-сертификат


Атрибуты класса Java


Атрибуты класса Java

В предыдущей главе мы использовали термин «переменная» xв примере (как показано ниже). На самом деле это атрибут класса. Или вы могли бы сказать, что атрибуты класса являются переменными внутри класса:

Пример

Создайте класс с именем " Main" с двумя атрибутами: xи y:

public class Main {
  int x = 5;
  int y = 3;
}

Другой термин для атрибутов класса — поля .


Доступ к атрибутам

Вы можете получить доступ к атрибутам, создав объект класса и используя синтаксис точки ( .):

В следующем примере создается объект Mainкласса с именем myObj. Мы используем x атрибут объекта для печати его значения:

Пример

Создайте объект с именем " myObj" и напечатайте значение x:

public class Main {
  int x = 5;

  public static void main(String[] args) {
    Main myObj = new Main();
    System.out.println(myObj.x);
  }
}


Изменить атрибуты

Вы также можете изменить значения атрибутов:

Пример

Установите значение x40:

public class Main {
  int x;

  public static void main(String[] args) {
    Main myObj = new Main();
    myObj.x = 40;
    System.out.println(myObj.x);
  }
}

Или переопределить существующие значения:

Пример

Измените значение xна 25:

public class Main {
  int x = 10;

  public static void main(String[] args) {
    Main myObj = new Main();
    myObj.x = 25; // x is now 25
    System.out.println(myObj.x);
  }
}

Если вы не хотите переопределять существующие значения, объявите атрибут как final:

Пример

public class Main {
  final int x = 10;

  public static void main(String[] args) {
    Main myObj = new Main();
    myObj.x = 25; // will generate an error: cannot assign a value to a final variable
    System.out.println(myObj.x);
  }
}

Ключевое finalслово полезно, когда вы хотите, чтобы переменная всегда хранила одно и то же значение, например PI (3.14159...).

Ключевое finalслово называется «модификатор». Вы узнаете больше об этом в главе Модификаторы Java .



Несколько объектов

Если вы создаете несколько объектов одного класса, вы можете изменить значения атрибутов в одном объекте, не затрагивая значения атрибутов в другом:

Пример

Измените значение xна 25 в myObj2и оставьте без xизменений myObj1:

public class Main {
  int x = 5;

  public static void main(String[] args) {
    Main myObj1 = new Main();  // Object 1
    Main myObj2 = new Main();  // Object 2
    myObj2.x = 25;
    System.out.println(myObj1.x);  // Outputs 5
    System.out.println(myObj2.x);  // Outputs 25
  }
}


Несколько атрибутов

Вы можете указать столько атрибутов, сколько хотите:

Пример

public class Main {
  String fname = "John";
  String lname = "Doe";
  int age = 24;

  public static void main(String[] args) {
    Main myObj = new Main();
    System.out.println("Name: " + myObj.fname + " " + myObj.lname);
    System.out.println("Age: " + myObj.age);
  }
}

В следующей главе вы узнаете, как создавать методы класса и как обращаться к ним с помощью объектов.