Question

I am overriding a method from superclass, however I want this method to be synchronized. Is it allowed? What could be the alternative?

Était-ce utile?

La solution

Yes, it's allowed as it doesn't change the contract but the implementation.

Think that you could always simply add a synchronized block :

synchronized(this) { 

just at the start of the method, which would achieve about the same result. There could also be other (possibly hidden) locks deeper in the method, which makes this really part of the implementation rather than the API.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top