7 / 30 / 9
Регистрация: 13.05.2015
Сообщений: 1,835
|
|
1 | |
Сигнатура31.05.2016, 14:16. Показов 3174. Ответов 4
Метки нет (Все метки)
Есть два впороса.
1. Правильно ли я знаю, сигнатурой метода в Java называются : название метода, параметры, которые метод возвращает и всё, больше ничего. 2. По какой причине в сигнатуру не включили тип, который метод возвращает?
0
|
31.05.2016, 14:16 | |
Ответы с готовыми решениями:
4
Сигнатура методов C++ 7z архив(сигнатура) Тип-сигнатура Микрокоманды. Сигнатура |
143 / 115 / 61
Регистрация: 13.01.2016
Сообщений: 305
|
||||||
31.05.2016, 16:53 | 2 | |||||
oobarbazanoo, 1. Да, только параметры, которые в метод поступают, а не возвращают.
2. Сигнатура однозначно определяет метод. По причине полиморфизма, о котором Вы спрашивали пару дней раньше, методы можно перегружать, то есть в метод с одним названием может поступать разное количество/типы аргументов. При этом перегрузить метод только типом возвращаемого значения нельзя.
1
|
7 / 30 / 9
Регистрация: 13.05.2015
Сообщений: 1,835
|
|
31.05.2016, 16:59 [ТС] | 3 |
Да, да. Это я знаю. Меня интересуют предпосылки к этому? Почему в Java не добавили перегрузку возвращаемых методов, а точнее если формулировать вопрос, то почему возвращаемый тип не входит в сигнатуру?
Добавлено через 1 минуту Могли б добавить легко перегрузка возвращаемого типа, выбирая нужный вариант метода местом вызова. Конечно были б ньюансы типо если в вызванном месте и String и int подходили б, но это ведь не такая значительная проблема.
0
|
143 / 115 / 61
Регистрация: 13.01.2016
Сообщений: 305
|
|
31.05.2016, 18:19 | 4 |
oobarbazanoo, спорное утверждение, и очень сомнительно, чтобы это было кому-то нужно. В любом случае, Джава специально сделана максимально простой и понятной, здесь нет ни указателей, ни перегрузки таких операторов, как "+" и т п.
1
|
2398 / 2223 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
|
31.05.2016, 20:09 | 5 |
Сообщение было отмечено oobarbazanoo как решение
Решение
Например у вас есть два метода
String method1(int i); Integer method1(int i); в своем коде вы пишите такую строку method1(2); какой метод следует вызвать? Это не говоря о заморочках с полиморфизмом ещё.
1
|
31.05.2016, 20:09 | |
31.05.2016, 20:09 | |
Помогаю со студенческими работами здесь
5
сигнатура изображений Сигнатура http-запроса Robokassa конечная сигнатура Переусложнённая сигнатура функции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |