A principal pesquisa deste artigo é a implementação das funções de retorno de chamada Java e padrões de observador. O código de introdução e implementação específico é o seguinte.
Modo de observador (às vezes chamado de modo Publish-inscrição, modo de visualização de modelo, modo de listener de origem ou modo de escravo) é um tipo de modo de design de software. Nesse modo, um objeto de destino gerencia todos os objetos do observador que dependem dele e emitem ativamente notificações quando seu estado muda. Isso geralmente é alcançado chamando os métodos de cada observador. Esse padrão é geralmente usado para implementar sistemas de processamento de eventos.
De fato, o modelo de observador possui um ambiente de uso comum com as pontes e estratégias mencionadas acima: encapsulam independentemente as alterações para obter reutilização e desacoplamento máximo. A diferença entre o observador e os dois últimos é que o alvo no padrão do observador e a mudança no observador não são independentes, mas têm alguma conexão.
O modo de observador é implementado em Java através da classe observável e da interface do observador. Um objeto observador monitora as alterações de um objeto observável. Quando o objeto observável muda, o observador é notificado e pode executar o trabalho correspondente.
pacote com.demo.test; importar java.util.observable; importar java.util.observer; // No modo Observador, a classe de destino mantém todos os referências de observadores, enquanto a classe de referência é uma classe public public observerCallbackDemo {// Observera@Classing concretObserements arg) {system.out.println ("concreteobservera update");}} // observador de classe BSTATIC concreteObServerb implementa observador {@Override public void update (objeto de objeto} {system.out.println ("concreteObserverB update");}} alteração de alteração () {// o método protegido só pode ser chamado em subclasse setChanged (); notifyObservers ();}} // interface da função de retorno de chamada interface ICallback {public void ONCALL ();} // classe de retorno da classe STATTCLABLEDEMO {private icallback; Call () {Callback.Oncall ();}} public static void main (string [] args) {// ObserverCerencreteObServera Observera = new ConcreteObServera (); concreteObserverb Observeverb = NOVA CONCLETEOBSERVERB (); concorda concorrente do conceito de conclusão = ConcreteObServerB (); ConcreteObservable (); observável.AdDobServer (Observera); observável.AdDobServer (Observerb); System.out.println ("countObservers =" + obsertable.countObServers ()); obsertable.ChangeValue (); // Função de chamada de callbackDemo ()); Callbackdemo (); callbackdemo.setListener (new icallback () {@Override public void oncall () {System.out.println ("retorno de chamada oncall");}}); callbackdemo.call ();}}}}}};Resultado da saída:
CountObServers = 2
Atualização do concretoerverb
Atualização do ConcreteObservera
Retorno de chamada ONCALL
A partir do código acima, podemos ver que a função de retorno de chamada deve pertencer ao padrão do observador, e o objetivo é substituir o mecanismo redondo-robin e reduzir o acoplamento entre os componentes. No modo Observador, a classe de destino mantém as referências de todos os observadores, enquanto o retorno de chamada mantém apenas uma referência.
O exposto acima é sobre funções de retorno de chamada Java e código de instância de padrões de observador neste artigo, espero que seja útil para todos. Amigos interessados podem continuar se referindo a outros tópicos relacionados neste site. Se houver alguma falha, deixe uma mensagem para apontá -la. Obrigado amigos pelo seu apoio para este site!