interface and abstract class

i would like to know about interface and abstract classes.
i read as
you need some classes to use some methods which you don't want to be included in the class, then you go for the interface, which makes it easy to just implement and make use of the methods defined in the interface.

abstract classes when
Abstract classes are an excellent way to create planned inheritance hierarchies. They're also a good choice for nonleaf classes in class hierarchies.

I am not clear on this this explanation. Thanks in advance
LVL 7
gudii9Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

SafetyFishCommented:
This seems like a pretty simple explanation to me:

http://flylib.com/books/en/1.489.1.30/1/

This is short, but sweet and seems to include a nice example of simple code for abstract classes and members. Comparison to interfaces is only cursory:

http://www.startvbdotnet.com/oop/abstract.aspx

This also seems like it is a good article:

http://www.javaworld.com/javaworld/javaqa/2001-04/03-qa-0420-abstract.html

I really like the comparison table between the two on this website:

http://mindprod.com/jgloss/interfacevsabstract.html
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
amirmsCommented:
Interface is simply an abstract class which all of its methods are abstracts i.e. non of the methods have implementations. An abstract class in contrast can include implemented methods (i.e. methods which already contain functional work and are simply inheritted to the children classes) an Interface does not contain implemented methods i.e all the methods in there are just declared so that the children can implement them.

Basically, if the children of a parent class have no common implementation of methods which they inherit, we define their parent as an abstract. For example if parent class "Shape" has only one non-private abstract method called "Draw()" and its two children classes namely "Circle" and "Rectangle" do not have a same way of drawing themselves, we could simply define "shape" as an abstract class and leave "Circle" and "Rectangle" to draw themselves however they are required to by implementing the "shape" class.
0
Kevin CrossChief Technology OfficerCommented:
This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.
0
SafetyFishCommented:
Sounds good to me.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Java EE

From novice to tech pro — start learning today.