Примеры в этой статье описывают использование класса Object в Java. Поделитесь этим со всеми для справки. Подробности следующие:
1. Класс Object является базовым классом всех классов Java.
Если ключевое слово Extensions не используется в объявлении класса для указания его базового класса, базовым классом по умолчанию является класс Object, например:
публичный класс Person { ~~~~~}
Эквивалентно
публичный класс Person расширяет Object{ ~~~~~}
2. метод равенства класса Object
① Определения в классе Object:
общедоступный логический метод равенства (Object obj).
Предоставляет логику, определяющую, равны ли объекты.
②. Метод равенства объекта определяется следующим образом: x.equals(y) возвращает true, если x и y являются приложениями одного и того же объекта, в противном случае возвращает false.
③ Некоторые классы, предоставляемые J2SDK, такие как String, Date и т. д., переопределяют метод равенства() объекта Object и вызывают метод равенства этих классов, x.equals(y), когда x и y относятся к одному и тому же типу. объекта и Когда содержимое атрибута равно (не обязательно равные объекты), верните true, в противном случае верните false.
④ При необходимости методquals() можно переписать в определяемом пользователем типе.
Пример кода выглядит следующим образом:
общественный класс TestEquals { public static void main (String args []) { Cat cat1 = новый Cat (1,2,3); cat2); System.out.println(cat1.equals(cat2)); String s1 = новая строка («привет» s2 = новая строка («привет»); System.out.println(s1 == s2); System.out.println(s1.equals(s2)); }}class Cat { int color; int height,weight; Cat(int color, int height, int Weight) { this.color = цвет; this.height = высота; this.weight = вес; } public boolean равно (Object obj) { if (obj == null) return false { if (obj); экземпляр Cat) { Cat c = (Cat)obj; if(c.color == this.color && c.height == this.height && c.weight == this.weight) { return true; } } } return false; ; }}
Результаты запуска показаны на рисунке ниже:
Я надеюсь, что эта статья будет полезна каждому, кто занимается программированием на Java.