Answer Posted / javamasque
Abstract means no concrete, it isn’t directly used. It depends on an implementation to be used. The abstract key word can be used before class (top-level/inner) or method.
Abstract class
• If we make a class abstract, it is not directly instantiated. It have to have a child class to be used.
• It is only be used through inheritance.
• The legacy or common functionality are kept in abstract class.
• It is also used for up casting and dynamic polymorphism.
• It is mostly used in factory design pattern.
• An abstract class can implement and extends another interface and class.
Abstract method
• An abstract doesn’t have any body.
• It has to have an override non-abstract method.
• If a class has an abstract method, then the class has to be abstract.
• An abstract method can only be set visibility modifier either public or protected.
Abstract inner class
• An inner class can be abstract but it is not commonly used and is not recommended also.
• A tight coupling utility is implemented as inner class but if the utility is too complex and we need to segregate into different inner subclasses, then we should go for abstract inner class. The scenario is very rare and it may not come in web applications but may come very big swing application.
| Is This Answer Correct ? | 4 Yes | 0 No |
Post New Answer View All Answers
Can a source file contain more than one class declaration?
What is default exception handling in java?
When we serialize an object does the serialization mechanism saves its references too?
What is the difference between static class and normal class?
When is the finalize() called?
What is math exp in java?
What do you understand by the term wrapper classes?
What is the += operator called?
What string is utf8?
Are arrays passed by reference in java?
Does list maintain insertion order java?
What is string in java with example?
What is the generic function?
How do you add an element to a set in java?
Which are the two subclasses under exception class?