Bom dia a todos, galera é o seguinte o que acontece em cada linha ali eu entendi perfeitamente, eu quero saber se o que estou pensando procede ou não, olha só:
Na minha cabeça ta o seguinte, que de alguma forma é passado para o método find() o contéudo que ele deve encontrar ou seja, de alguma forma realmente o métod find() recebe o que está em matcher() ?
Acho que você tem um problema com orientação a objetos - está pensando em Java como se fosse Fortran ou alguma outra linguagem antiga, estruturada. Para simplificar, vou explicar as coisas de uma outra maneira.
Você viu que o método “find” da classe Matcher não recebe parâmetros (ok) mas na verdade todos os métodos de uma classe que não são estáticos (o que é o caso do método “find”) recebem um parâmetro “escondido”, que é o tal do “this”. (Nesse caso em particular, “this” é a mesma coisa que a variável “matcher”).
Esse parâmetro “escondido”, que é o objeto sobre o qual o método opera, pode conter variáveis de instância que são as usadas pelo método “find” para trabalhar.
E é por isso que você não precisa passar mais parâmetros para o “find”.
evertonsilvagomesjav
entaglement, eu sei que o método find() opera sobre o objeto matcher() pois o mesmo está invocando, ah duvida seria como find() faz essa busca, maas nao sei se entendi perfeitamente o que vc quis dizer, que ele usa variaveis de instancia?
B
bezier_curve
Usa sim. Basta você olhar o fonte do java.util.regex.Pattern e java.util.regex.Matcher.
evertonsilvagomesjav
bezier como faço pra olhar o cod font das classes dentro do eclipse?
B
bezier_curve
No seu JDK deve haver um arquivo src.zip. Abra esse arquivo .zip e olhe os arquivos .java que existem dentro dele.
evertonsilvagomesjav
bezier vc abre os arquivos .java com o que? To tentando abrir com eclipse nao ta dando.
B
bezier_curve
Um arquivo .zip pode ser aberto com qualquer coisa que abra arquivos .zip, tal como o WinZip, o WinRAR ou algum outro programa que abra arquivos .zip. Ele também pode ser aberto com o Windows Explorer (“Compressed Folder”).
Quanto ao Eclipse: acho que é possível você associar esse arquivo .zip (sources) à sua instalação do JDK. É questão de procurar dentro do Eclipse.
vi-gb
Acho que a sua duvida cabe a mesma resposta do seu topico sobre DateFormat.
Voce criou uma instancia do Pattern passando o regex, e quando o pattern criou uma instancia do macher ele criou ja com o regex que voce passou pois ele havia guardado este valor em um atributo, sendo assim quando voce chama o find, a instancia macher ja possui o regex em um dos seus atributos.
evertonsilvagomesjav
vi-gb obrigado, é falta de conhecer mesmo as classes pra saber o funcionamento, se ta usando variaveis de instancia ou por exemplo um método chama outro método e por ai vai…mas eu tava dando uma olhada no método matcher() ele realmente chama o compile().
quanto aos arquivos .java eu posso abrir-los como?