Я изучаю исходный код, написанный кем-то другим. Я столкнулся с чем-то вроде этого:
x = new MyObject();
x._("somestring")
Что означает этот объект выражения._ ( "строка здесь" )?
Ответ 1
Это просто означает, что у вас есть метод, имя которого _ в классе MyObject (или суперкласс). Там ничего особенного, символ _ просто оказывается действительным в именах Java.
Вы можете быть удивлены, потому что часто не видите этого. И вы этого часто не видите, потому что "эта практика не поощряется". Это делает код более трудным для чтения.
Имя переменной может быть любым юридическим идентификатором - неограниченной длиной последовательность букв и цифр в Юникоде, начиная с буквы, знак доллара "$" или символ подчеркивания "_" . Конвенция, однако, всегда следует начинать имена переменных с буквы, а не "$", или "_" . Кроме того, знак доллара, по соглашению, никогда не использовался вообще. Вы можете найти некоторые ситуации, когда автогенерация имена будут содержать знак доллара, но ваши имена переменных должны всегда избегайте его использования. Аналогичная конвенция существует для подчеркивания персонаж; в то время как технически законно начинать ваше имя переменной с "_" , эта практика не поощряется. Белое пространство не разрешено
Ответ 2
Класс MyObject имеет метод _(), который принимает String как входной аргумент.