Win a copy of Microservices in Action this week in the Web Services forum!
    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

Question - Static class vs. interface  RSS feed

Ranch Hand
Posts: 72
  • Mark post as helpful
  • send pies
  • Report post to moderator
Hi ranchers,
When I read the JSP and Servlet specs, I found some are abstract classes, while others are interface. what's the main difference between these two, besides one is using key extends and the other is using implements? Why do the specifications particularly use abstract classes in one place, and use interface in other places?
I think hard about this question but haven't reach a convincible answere. can anyone help me out?
thank you so much.
Ranch Hand
Posts: 5040
  • Mark post as helpful
  • send pies
  • Report post to moderator
Can somebody transfer this post to the Java In General - Beginners forum, please.
No, really being honest... :roll:
- satya
Posts: 11
  • Mark post as helpful
  • send pies
  • Report post to moderator
Posts: 3252
  • Mark post as helpful
  • send pies
  • Report post to moderator
Agreed, Satya. Given that anyone studying for the SCWCD developer can be assumed to be a SCJP, this does not appear to be the best forum for this question. Hold steady while we beam you over...
Very funny, Scotty. Now beam their clothes too please
- Peter
PS. The specification uses interfaces almost everywhere for the same reasons that they are a good idea elsewhere: so that you can have wildly different implementations that do the same (conceptual) job in completely different ways. After all, different servlet containers can differ substantially in environment, requirements and architecture.
The few classes in javax.servlet... all have specific reasons to be a class and not an interface: GenericServlet and HttpServlet are convenience classes (implementing the Servlet interface) to save you coding. The Servlet*Stream classes need to be (abstract) classes if only because the streams are classes. Cookie is a class because it's a very self-contained entity with no real need for different implementations. Et cetera.
[ March 17, 2002: Message edited by: Peter den Haan ]
    Bookmark Topic Watch Topic
  • New Topic
Boost this thread!