Win a copy of Spring in Action (5th edition) this week in the Spring forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
  • Campbell Ritchie
  • Bear Bibeault
  • Devaka Cooray
  • Liutauras Vilda
  • Jeanne Boyarsky
  • Knute Snortum
  • Junilu Lacar
  • paul wheaton
Saloon Keepers:
  • Ganesh Patekar
  • Frits Walraven
  • Tim Moores
  • Ron McLeod
  • Carey Brown
  • Stephan van Hulst
  • salvin francis
  • Tim Holloway

callback implementation  RSS feed

Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
how to implement callback methods in java
Ranch Hand
Posts: 1873
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
hi sen
We can see the use of callbacks in Java event model where objects registers themselves as Listeners and gets notified when the event occurs. That is a kind of Callback only I would say.
Also, you can look for Observer and Observable classes which are also callback examples.
You can refer to the site -
to see a possible approach for implementing callbacks.
To me callbacks can be simply implemented by the same logic the event model uses with 'registering' listeners and make observer and observable objects follow some interface so we can call callback methods.
Now, if we are coming from C background then callbacks are really simple out there. Just cast funtion pointer to unsigned int if you will and it will work.
If we want to have a callback mechanism where we wouldn't like to make the called back object follow some interface and have ability to pass the method name as string while registering the callback then we would endup using Reflection to invoke the method when the callback needs to take place...
Hope I didn't confuse you.
(instanceof Sidekick)
Posts: 8791
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I find Observer and Observable overly complicated. I wrote my own base publisher class that adds and removes subscribers and requires me to hand-code the actual messaging methods like this:

A simple call to myPublisher.myMethod() gets forwarded to all subscribers.
The publisher and subscribers both implement an interface that defines the events or methods that can occur. Note that this lets me fire any method on subscribers, pass any parameters, and even make use of return values if I want to.
My Messaging Patterns page has a section on Pub-Sub that shows a couple variations.
Hope that helps!
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!