Win a copy of Micro Frontends in Action this week in the Server-Side JavaScript and NodeJS 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
  • Liutauras Vilda
  • Paul Clapham
  • Bear Bibeault
  • Jeanne Boyarsky
  • Ron McLeod
  • Tim Cooke
  • Devaka Cooray
Saloon Keepers:
  • Tim Moores
  • Tim Holloway
  • Jj Roberts
  • Stephan van Hulst
  • Carey Brown
  • salvin francis
  • Scott Selikoff
  • fred rosenberger

Marker Interface purpose

Ranch Hand
Posts: 159
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Marker Interface is the empty interface.What is their purpose?
Ranch Hand
Posts: 513
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Basically, marker interfaces are used to indicate that a class supports a special Java language functionality, but (unlike normal interfaces) this functionality isn't expressed solely through its method definitions.

Prior to Java 1.5, there was no way to describe a class's properties beyond the standard modifiers (public, private, etc), so marker interfaces were used for this purpose. Admittedly, it does feel a bit like a hack, because it's seems strange that Java assigns special meanings to a few interfaces (, java.lang.Cloneable, java.rmi.Remote, etc). Java 1.5 introduced annotations, which (in my opinion) would have been a far better mechanism for these purposes, if annotations had existed when Java was first released.
Posts: 43016
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
This question was asked just yesterday; see here for the answer.
Nothing up my sleeve ... and ... presto! A tiny ad:
Thread Boost feature
    Bookmark Topic Watch Topic
  • New Topic