Есть ли разница между string.getLengh () и getLength (string) в Java? - PullRequest
0 голосов
/ 11 апреля 2020

Рассмотрим 2 случая:

System.out.println(myString.getLength());

и

System.out.println(getLength(myString));

Как я могу создать метод, который использует после обозначения точки, как первый случай?

1 Ответ

0 голосов
/ 11 апреля 2020

Класс (в вашем случае String) имеет набор методов. Это должно быть известно и может быть изменено в исходном коде String class.

, поскольку у вас нет к нему доступа (за исключением случаев, когда вы, например, создаете свой собственный JDK / JRE с помощью других методов или изменяете boot classpath), вы не можете изменять методы классов внутри стандартной библиотеки.

Если вы создаете свой собственный класс, вы можете создавать в нем методы самостоятельно:

public class YourClass{
    public int yourMethod(){
         return whatever;
    }
}

Вы можете вызвать метод, если у вас есть объект этого:

YourClass yourObject=new YourClass();
System.out.println(yourObject.yourMethod());

Как упомянуто @ernest_k в комментариях вопроса, вы можете изменить методы других классов (вам не принадлежит ) на некоторых других языках программирования:

Not in Java. Вы можете выполнять такие трюки, используя Groovy или Kotlin ... Not Java.

Второй вариант работает только в том случае, если вы находитесь в том же классе или статически импортировали метод.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...