2016-02-20 2 views
0

Я знаю, что в способе по загрузкеПерегрузка метода зависит от положения каждого аргумента?

  • число параметров должно быть разными
  • типа
  • данных параметра должен быть разными
  • типа возвращаемого значения должно быть разными

    общественности недействительным теста (INT I , String s) {// код}

    общедоступный тест void (String s, int i) {// код}

этот код компилируется нормально .. Я хочу знать, под какой вариант это покрыто .. Также я должен рассматривать это как изменение позиции аргументов или другой тип аргументов?

ответ

0

Тип данных параметров отличается.

Java видит int, тогда String полностью отличается от String, а затем int, а также должен. Мы с вами рассматриваем ваш пример как перегруппировку параметров, Java рассматривает его как разные типы данных.

Я рассматриваю это как перегруппировку, потому что я могу видеть имена (это имя не имеет отношения к Java, но для меня это важно). Если бы я был немного изменить свой код, я хотел бы видеть его больше как Java, изменение типов данных параметров ...

public void test(int apples, String appleType) {//code} 

public void test(String streetName, int cars) {//code} 

В настоящее время существует очевидная разница между этими двумя. Имя может быть любым, но важно то, что для каждого параметра изменился тип данных.

Дополнительное примечание: для обеспечения согласованности попробуйте иметь общее расположение ваших типов параметров. Избегайте перехода от (int a, String b) некоторыми способами до (String c, int d) в другие.

Смежные вопросы