Answer Posted / rstv
Abstract classes are classes that contain one or more
abstract methods. An abstract method is a method that is
declared, but contains no implementation. Abstract classes
may not be instantiated, and require subclasses to provide
implementations for the abstract methods. Let's look at an
example of an abstract class, and an abstract method.
Suppose we were modeling the behavior of animals, by
creating a class hierachy that started with a base class
called Animal. Animals are capable of doing different
things like flying, digging and walking, but there are some
common operations as well like eating and sleeping. Some
common operations are performed by all animals, but in a
different way as well. When an operation is performed in a
different way, it is a good candidate for an abstract
method (forcing subclasses to provide a custom
implementation). Let's look at a very primitive Animal base
class, which defines an abstract method for making a sound
(such as a dog barking, a cow mooing, or a pig oinking).
public abstract Animal
{
public void eat(Food food)
{
// do something with food....
}
public void sleep(int hours)
{
try
{
// 1000 milliseconds * 60 seconds * 60
minutes * hours
Thread.sleep ( 1000 * 60 * 60 * hours);
}
catch (InterruptedException ie) { /* ignore */ }
}
public abstract void makeNoise();
}
Note that the abstract keyword is used to denote both an
abstract method, and an abstract class. Now, any animal
that wants to be instantiated (like a dog or cow) must
implement the makeNoise method - otherwise it is impossible
to create an instance of that class. Let's look at a Dog
and Cow subclass that extends the Animal class.
public Dog extends Animal
{
public void makeNoise() { System.out.println ("Bark!
Bark!"); }
}
public Cow extends Animal
{
public void makeNoise() { System.out.println ("Moo!
Moo!"); }
}
Is This Answer Correct ? | 2 Yes | 1 No |
Post New Answer View All Answers
Does php 5 support exceptions?
What is xss and csrf?
What is the function mysql_pconnect() usefull for?
Tell us what is the difference between session_unregister() and session_unset()?
How to set session.gc_divisor properly?
How to delete an element from an array?
What are helpers in php?
Give the case where we can use get and we can use post methods?
Why is overriding runtime?
What is the use of mysql_fetch_array in php?
What is substr in php?
What is the use of namespace in php?
Is it easy to learn php?
How to redirect a page in php?
What are the different filter functions used to filter a variable?