Проверка экземпляра класса Long
На этом этапе мы рассмотрим класс Long
в Java и научимся проверять, является ли объект экземпляром класса Long
.
В Java примитивные типы данных, такие как long
, не являются объектами. Однако Java предоставляет обертки (wrapper classes) для каждого примитивного типа, и Long
является оберткой для примитивного типа long
. Обертки позволяют рассматривать примитивные значения как объекты, что полезно во многих ситуациях, например, при работе с коллекциями.
Для проверки, является ли объект экземпляром определенного класса, мы используем оператор instanceof
. Оператор instanceof
- это бинарный оператор, используемый для проверки, является ли объект экземпляром класса, подкласса или интерфейса.
Создадим простую Java-программу, чтобы показать, как использовать оператор instanceof
с классом Long
.
-
Откройте файл HelloJava.java
в редакторе WebIDE, если он еще не открыт.
-
Замените все содержимое файла следующим кодом:
public class HelloJava {
public static void main(String[] args) {
// Create a Long object
Long myLong = 12345L;
// Create an Integer object
Integer myInteger = 67890;
// Check if myLong is an instance of Long
if (myLong instanceof Long) {
System.out.println("myLong is an instance of Long.");
} else {
System.out.println("myLong is not an instance of Long.");
}
// Check if myInteger is an instance of Long
if (myInteger instanceof Long) {
System.out.println("myInteger is an instance of Long.");
} else {
System.out.println("myInteger is not an instance of Long.");
}
}
}
В этом коде:
- Мы создаем объект
Long
с именем myLong
со значением 12345L
. Суффикс L
указывает, что это литерал типа long
.
- Мы создаем объект
Integer
с именем myInteger
со значением 67890
.
- Мы используем оператор
instanceof
для проверки, является ли myLong
экземпляром Long
.
- Мы используем оператор
instanceof
для проверки, является ли myInteger
экземпляром Long
.
-
Сохраните файл (Ctrl+S или Cmd+S).
-
Скомпилируйте программу, выполнив следующую команду в терминале:
javac HelloJava.java
Если компиляция прошла успешно, вы не увидите никакого вывода.
-
Запустите скомпилированную программу:
java HelloJava
Вы должны увидеть следующий вывод:
myLong is an instance of Long.
myInteger is not an instance of Long.
Этот вывод подтверждает, что myLong
, который мы создали как объект Long
, действительно является экземпляром класса Long
, в то время как myInteger
, созданный как объект Integer
, не является.