Для каждого из приведенных ниже вызовов методов (можно использовать и формулировку "обращений к методам") следует указать, верный этот вызов или нет, и объяснить ответ.
Однако прежде мы хотим обратить ваше внимание на два следующих момента:
· в примере используются переменные логического типа (boolean), которые могут принимать только одно из двух возможных значений: либо true, либо false.
· Использование служебного слова public – не обязательно
Вызов метода | Ответ и объяснение |
a=test1(5.3, a, e); | Вызов неверный: метод возвращает значение типа double, которое нельзя присвоить переменной типа int |
c=test1(5.3, d, e); | Вызов неверный: на втором месте в скобках указана переменная типа double, которая не может передать значение переменной типа int, указанной на втором месте в заголовке метода |
d=test1(5.3, a, e); | Вызов верный, все необходимые соответствия типов соблюдены |
d=test1(1, 2, true); | Вызов верный, все необходимые соответствия типов соблюдены |
if(test1(d, b, e)==f) test2(d, c+b, e); | Вызов неверный: в условии сравнивается переменная типа int и возвращаемое методом значение, которое относится к типу double |
f=test2(c, 5, e); | Вызов верный, все необходимые соответствия типов соблюдены |
c=test1(c, d, false); | Вызов неверный: на втором месте в скобках указана переменная типа double, которая не может передать значение переменной типа int, указанной на втором месте в заголовке метода |
Соответствие вызова метода и заголовка метода можно, с определенными оговорками, сравнить с правилами на соревнованиях по эстафете:
|
|
· Участники забега должны быть одного "типа" (возраст, пол и так далее): это как бы соответствие типа метода и типа переменной, которой он, например, возвращает значение.
· Палочку можно передавать только участнику своей команды: это как бы соответствие между типами переменных или значений в вызове и типами переменных или значений в заголовке метода.
Разберем еще один пример:
Даны объявления переменных и заголовок метода:
int a, x;