Java Урок 26: КЛАСС, использование объектов в качестве параметров метода
Опубликовано: 01.09.2018
До сих пор в качестве параметров методов мы использовали только простые типы. Однако передача методам объектов и вполне допустима, и достаточно распространена.
Скачать исходники для статьи можно ниже
Например, рассмотрим следующую короткую программу:
// Методам можно передавать объекты, class Test { int b; int a; // возврат значения true, если параметр о равен вызывающему объекту boolean equals(Test о) { if(о.а == а && o.b == b) return true; else return false; } } class PassOb { public static void main(String args[]) { Test ob1 = new Test(); ob1.b = 100; ob1.a = 22; Test ob2 = new Test(); ob2.b = 100; ob2.a = 22; Test ob3 = new Test(); ob3.b = 2; ob3.a = -2; System.out.println("ob1 == ob2: " + ob1.equals(ob2)); System.out.println("ob1 == ob3: " + ob1.equals(ob3)); } }Эта программа создает следующий вывод.
Урок №56. Объекты в качестве аргументов и параметров
ob1 == ob2: true ob1 == оbЗ: false
Как видите, метод equals() внутри метода Test проверяет равенство двух
объектов и возвращает результат этой проверки. То есть он сравнивает вызывающий объект с тем, который был ему передан. Если они содержат одинаковые значения, метод возвращает значение true. В противном случае он возвращает значение false.Уроки Java - №15 Перегрузка методов
Обратите внимание на то, что параметр о в методе equals () указывает Test в качестве типа. Хотя Test — тип класса, созданный программой,
он используется совершенно так же, как встроенные типы Java.