Topics: Object-oriented programming, C++, Java Pages: 4 (1086 words) Published: May 16, 2013
11. Compare and contrast abstract classes and interfaces. Why would you use an abstract class? Why would u use an interface? -abstract class, ex: (public abstract class Employee{...})
-For related classes only, inheritance (last week examples) -extends keyword
-contains both instance and static variables
-contains both abstract and concrete methods only
An abstract class is only to be sub-classed (inherited from). In other words, it only allows other classes to inherit from it but cannot be instantiated. The advantage is that it enforces certain hierarchies for all the subclasses. In simple words, it is a kind of contract that forces all the subclasses to carry on the same hierarchies or standards. -interface (public interface Payable{...})

-for unrelated classes (today examples)
-contains only static variables
-contains only abstract method
An interface is not a class. It is an entity that is defined by the word Interface. An interface has no implementation; it only has the signature or in other words, just the definition of the methods without the body. As one of the similarities to Abstract class, it is a contract that is used to define hierarchies for all subclasses or it defines specific set of methods and their arguments. The main difference between them is that a class can implement more than one interface but can only inherit from one abstract class Similarities

-both does not allow object to be created
-both contain abstract method that must be override
-both exhibit a polymorphic behavior

Feature| Interface| Abstract class|
Multiple inheritance| A class may inherit several interfaces.| A class may inherit only one abstract class.| Default implementation| An interface cannot provide any code, just the signature.| An abstract class can provide complete, default code and/or just the details that have to be overridden.| Access Modfiers| An interface cannot have access modifiers for the subs, functions, properties etc...
Continue Reading

Please join StudyMode to read the full document

You May Also Find These Documents Helpful

  • Nickerson & Adams (1979): Long-Term Memory for a Common Object Essay
  • Essay about Introduction to Object Oriented Programming
  • Object Oriented Programming Midterm Essay
  • Object Oriented Programming Essay
  • Object Oriented Programming Essay
  • Object Oriented Documentation Essay
  • Object Oriented Paradigm Essay
  • Essay on Basic Concepts of Object-Oriented Programming

Become a StudyMode Member

Sign Up - It's Free