Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как получить два разных метода/поля с одним и тем же именем, но с разными типами и возвращаемым значением?

Retronik33 Профи (829), на голосовании 1 год назад
Например:
 Field cl1 = ObfuscatedClass.class.getField("a",String.class); // поле с именем "a" и типом String

Field cl2 = ObfuscatedClass.class.getField("a",int.class); // поле с тем же именем "a", но типом int
Голосование за лучший ответ
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (264043) 1 год назад
Можно перегрузкой метода

 public class Main { 
public void myMethod(String str) {
// Логика для работы со строкой
System.out.println("Обработка строки: " + str);
}

public void myMethod(int number) {
// Логика для работы с числом
System.out.println("Обработка числа: " + number);
}

public static void main(String[] args) {
Main obj = new Main();
obj.myMethod("тридцать три"); // Вызывается метод с аргументом типа String
obj.myMethod(33); // Вызывается метод с аргументом типа int
}
}
Retronik33Профи (829) 1 год назад
Я не про перегрузку, а про рефлексию. Чтобы параметры и имя метода оставались в обоих методах одинаковы, но возращаемое значение было разным.
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (264043) Retronik33, это надо смотреть в сторону параметризованных типов или класса-обёртки.
Похожие вопросы