Bu sınıfın herhangi bir yöntemi çağrıldığında her seferinde yürütülen bir yöntemde bir yönteme sahip olmanın bir yolu var mı.Java'da bu sınıfın herhangi bir yöntem çağrılmasından önce bir yöntem çağırın.
Benim burada senaryonun bir kısa vereceğiz:
Class Util{
private isConnected(){
if(!xxxapi.connected())
throw new MyException(....)
}
public createFile(){....}
public removeFile(){....}
}
Yani, new Util.createFile()
çağrı zaman ben createFile()
aslında başlamadan önce IsConnected() çağrılır bunu istiyorum. Açıkçası Her yöntemin başlangıcında her zaman isConnected()
'u arayabilirim, ama başka bir çözüm bulabilir miyim diye merak ediyordum. Böyle bir senaryo için başka herhangi bir öneri/çözüm var mıdır?
Muhtemelen yansıma apis incelemelisiniz. Yansıma kullanarak bunu başarabilirsiniz. Eğer çerçeve kullanacaksanız, muhtemelen kullanım durumunuz için orada olan AOP'ye bakabilirsiniz. – sakura
AOP'yi kullanabilirsiniz, ancak bu yöntemi start _every_ yönteminde çağırmak istemiyorsanız, muhtemelen bundan daha fazla yararlanamayacaksınız (geliştirici performansı açısından). – Thomas
Daha zarif bir çözüm için ek açıklamalara bakmanız gerektiğini düşünüyorum – BigMike