Download - Abstract classes and Methods in java
![Page 1: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/1.jpg)
Abstract classes and Methods inJava
A Presentation in Depth
![Page 2: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/2.jpg)
Index
DefinitionUsefulnessWhy they cannot be instantiated?How to use abstract classes?Purpose of abstract classWhat is Concrete class?ExamplesCharacteristics explained
![Page 3: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/3.jpg)
Definition
Abstract classes—for which you never intend tocreate objects.
![Page 4: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/4.jpg)
Useful
They’re used only as superclasses in inheritancehierarchies, we refer to them as abstractsuperclasses.
![Page 5: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/5.jpg)
Why they cannot be instantiated?
1. These classes cannot be used to instantiateobjects, because abstract classes areincomplete.
2. Abstract superclasses are too general tocreate real objects—they specify only what iscommon among subclasses.
![Page 6: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/6.jpg)
So how can we use them? Orinstantiate them?
Subclasses must declare the “missing pieces” tobecome “concrete” classes, from which you caninstantiate objects.
![Page 7: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/7.jpg)
What is the purpose of abstract class?
An abstract class’s purpose is to provide anappropriate superclass from which other classescan inherit and thus share a common design.
![Page 8: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/8.jpg)
What is concrete class?
Classes that can be used to instantiate objectsare called concrete classes. Such classes provideimplementations of every method they declare(some of the implementations can be inherited).
Concrete classes provide the specifics that makeit reasonable to instantiate objects.
![Page 9: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/9.jpg)
Example 1
![Page 10: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/10.jpg)
Example 2
![Page 11: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/11.jpg)
Characteristics summary
![Page 12: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/12.jpg)
Characteristics summary
1. Abstract class can be empty.
![Page 13: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/13.jpg)
Characteristics summary
1. Abstract class can be empty.
2. Abstract class can be made without abstractmethods.
![Page 14: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/14.jpg)
Characteristics summary
1. Abstract class can be empty.
2. Abstract class can be made without abstractmethods.
3. A non-abstract class cannot contain abstractmethod.
![Page 15: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/15.jpg)
![Page 16: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/16.jpg)
Abstract class can be empty
![Page 17: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/17.jpg)
Abstract class can be empty
abstract class Vehicle{}
![Page 18: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/18.jpg)
Abstract class can be empty
abstract class Vehicle{}
Contains nomembers
![Page 19: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/19.jpg)
Abstract class can be empty
abstract class Vehicle{}
Contains nomembersPerfectly validPerfectly valid
![Page 20: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/20.jpg)
![Page 21: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/21.jpg)
Abstract class can be made withoutabstract methods
![Page 22: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/22.jpg)
Abstract class can be made withoutabstract methods
abstract class Vehicle{
void brake(){System.out.println("non abstract method brake");
}}
![Page 23: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/23.jpg)
Abstract class can be made withoutabstract methods
abstract class Vehicle{
void brake(){System.out.println("non abstract method brake");
}}
Non abstractmethod
Non abstractmethod
![Page 24: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/24.jpg)
Abstract class can be made withoutabstract methods
abstract class Vehicle{
void brake(){System.out.println("non abstract method brake");
}}
Perfectlyvalid
Perfectlyvalid
Non abstractmethod
Non abstractmethod
![Page 25: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/25.jpg)
![Page 26: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/26.jpg)
class Vehicle{
abstract void brake();}
![Page 27: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/27.jpg)
class Vehicle{
abstract void brake();}
Invalid/compilationerror
![Page 28: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/28.jpg)
A non-abstract class cannot containabstract method
class Vehicle{
abstract void brake();}
Invalid/compilationerror
![Page 29: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/29.jpg)
A non-abstract class cannot containabstract method
class Vehicle{
abstract void brake();}
Invalid/compilationerror
In other words, ifa class contains
abstract methodthen class mustalso be abstract.
In other words, ifa class contains
abstract methodthen class mustalso be abstract.
![Page 30: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/30.jpg)
A non-abstract class cannot containabstract method
class Vehicle{
abstract void brake();}
Invalid/compilationerror
abstract class Vehicle{
abstract void brake();}
Now valid
In other words, ifa class contains
abstract methodthen class mustalso be abstract.
In other words, ifa class contains
abstract methodthen class mustalso be abstract.
![Page 31: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/31.jpg)
Example 3
![Page 32: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/32.jpg)
Example 4
![Page 33: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/33.jpg)
Characteristics summary
![Page 34: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/34.jpg)
Characteristics summary
4. Class can be final or abstract, not both.
![Page 35: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/35.jpg)
Characteristics summary
4. Class can be final or abstract, not both.
5. Method be can be final or abstract not both.
![Page 36: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/36.jpg)
Class can be abstract or final, not both
![Page 37: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/37.jpg)
Class can be abstract or final, not both
ErrorError
![Page 38: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/38.jpg)
Method can be abstract or final, notboth
![Page 39: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/39.jpg)
Method can be abstract or final, notboth
ErrorError
![Page 40: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/40.jpg)
Real Examples of Abstract Classes inJava API
1. java.awt.Component
Component
Button Checkbox Label TextComponent
![Page 41: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/41.jpg)
Real Examples of Abstract Classes inJava API
2. java.lang.Number
Number
Byte Long Integer Float Double
![Page 42: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/42.jpg)
Real Examples of Abstract Classes inJava API
3. javax.swing.AbstractButton
AbstractButtonAbstractButton
JButtonJButton JToggleButtonJToggleButton JMenuItemJMenuItem
![Page 43: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/43.jpg)
Characteristics summary
![Page 44: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/44.jpg)
Characteristics summary
6. Non-abstract class cannot contain abstract methods eventhere are non abstract methods too.
![Page 45: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/45.jpg)
Characteristics summary
6. Non-abstract class cannot contain abstract methods eventhere are non abstract methods too.
7. An abstract class can contain both abstract and non abstractmethods.
![Page 46: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/46.jpg)
Characteristics summary
6. Non-abstract class cannot contain abstract methods eventhere are non abstract methods too.
7. An abstract class can contain both abstract and non abstractmethods.
8. Abstract class can be inherited like normal class.
![Page 47: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/47.jpg)
Characteristics summary
6. Non-abstract class cannot contain abstract methods eventhere are non abstract methods too.
7. An abstract class can contain both abstract and non abstractmethods.
8. Abstract class can be inherited like normal class.
9. If abstract class contains no abstract methods then subclassof it, can be empty.
![Page 48: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/48.jpg)
Non-abstract class cannot contain abstractmethods even there are non-abstract methods
too
![Page 49: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/49.jpg)
Non-abstract class cannot contain abstractmethods even there are non-abstract methods
too
Non abstractmethod
Non abstractmethod
![Page 50: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/50.jpg)
Non-abstract class cannot contain abstractmethods even there are non-abstract methods
too
AbstractmethodAbstractmethod
Non abstractmethod
Non abstractmethod
![Page 51: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/51.jpg)
Non-abstract class cannot contain abstractmethods even there are non-abstract methods
too
AbstractmethodAbstractmethod
Non abstractmethod
Non abstractmethod
Either make the classabstract or make method
non abstract to correctthis error
Either make the classabstract or make method
non abstract to correctthis error
![Page 52: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/52.jpg)
![Page 53: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/53.jpg)
![Page 54: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/54.jpg)
An abstract class can contain bothabstract and non abstract methods
![Page 55: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/55.jpg)
An abstract class can contain bothabstract and non abstract methods
Nonabstractmethod
Nonabstractmethod
![Page 56: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/56.jpg)
An abstract class can contain bothabstract and non abstract methods
Nonabstractmethod
Nonabstractmethod
AbstractmethodAbstractmethod
![Page 57: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/57.jpg)
Abstract class can be inherited likenormal class
If abstract classis empty thensubclass can
also be empty.
If abstract classis empty thensubclass can
also be empty.
![Page 58: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/58.jpg)
Abstract class can be inherited likenormal class
If abstract classis empty thensubclass can
also be empty.
If abstract classis empty thensubclass can
also be empty.
![Page 59: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/59.jpg)
Abstract class can be inherited likenormal class
No errorIf abstract classis empty thensubclass can
also be empty.
If abstract classis empty thensubclass can
also be empty.
![Page 60: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/60.jpg)
If abstract class contains no abstractmethods then subclass of it, can be empty
![Page 61: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/61.jpg)
If abstract class contains no abstractmethods then subclass of it, can be empty
![Page 62: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/62.jpg)
If abstract class contains no abstractmethods then subclass of it, can be empty
Perfectlyvalid
Perfectlyvalid
![Page 63: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/63.jpg)
Example 5
![Page 64: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/64.jpg)
Example 6
![Page 65: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/65.jpg)
Example 7
![Page 66: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/66.jpg)
Characteristics summary
![Page 67: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/67.jpg)
Characteristics summary10. If abstract class contains one or more abstract methods
then subclass of it, can not be empty.
![Page 68: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/68.jpg)
Characteristics summary10. If abstract class contains one or more abstract methods
then subclass of it, can not be empty.
11. If abstract class contains one or more abstract methodsthen subclass of it, can be empty, only if subclass is alsoabstract.
![Page 69: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/69.jpg)
Characteristics summary10. If abstract class contains one or more abstract methods
then subclass of it, can not be empty.
11. If abstract class contains one or more abstract methodsthen subclass of it, can be empty, only if subclass is alsoabstract.
12. If a abstract class contains abstract methods then subclassmust have to implements(write code) for abstractmethods, if subclass does not want to be abstract.
![Page 70: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/70.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can not be empty
![Page 71: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/71.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can not be empty
![Page 72: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/72.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can not be empty
ErrorError
![Page 73: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/73.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can not be empty
ErrorError
![Page 74: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/74.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can not be empty
There are two ways to correctthis error either implement
abstract methods in subclass ormake subclass abstract.
ErrorError
![Page 75: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/75.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can not be empty
There are two ways to correctthis error either implement
abstract methods in subclass ormake subclass abstract.
ErrorError
Next slideswill show
how toremove this
error
Next slideswill show
how toremove this
error
![Page 76: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/76.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can be empty, only
if subclass is also abstract
![Page 77: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/77.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can be empty, only
if subclass is also abstract
![Page 78: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/78.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can be empty, only
if subclass is also abstract
Perfectlyvalid
Perfectlyvalid
![Page 79: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/79.jpg)
If a abstract class contains abstract methods then subclass musthave to implements(write code) for abstract methods, if subclass
does not want to be abstract
![Page 80: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/80.jpg)
If a abstract class contains abstract methods then subclass musthave to implements(write code) for abstract methods, if subclass
does not want to be abstract
Perfectlyvalid
Perfectlyvalid
![Page 81: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/81.jpg)
Characteristics summary
![Page 82: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/82.jpg)
Characteristics summary13.Abstract class can implement super class
abstract methods.
![Page 83: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/83.jpg)
Characteristics summary13.Abstract class can implement super class
abstract methods.
14.Abstract classes can contain final methods,constructors, static methods.
![Page 84: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/84.jpg)
Characteristics summary13.Abstract class can implement super class
abstract methods.
14.Abstract classes can contain final methods,constructors, static methods.
15.An abstract class cannot be instantiated, but wecan make reference of this class.
![Page 85: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/85.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can be abstract and still
can implements super class methods.
![Page 86: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/86.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can be abstract and still
can implements super class methods.
![Page 87: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/87.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can be abstract and still
can implements super class methods. Abstractsuper class
![Page 88: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/88.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can be abstract and still
can implements super class methods.
Abstractsub class
Abstractsuper class
![Page 89: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/89.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can be abstract and still
can implements super class methods.
In other words,abstract class canimplement super
class abstractmethods
In other words,abstract class canimplement super
class abstractmethods
Abstractsub class
Abstractsuper class
![Page 90: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/90.jpg)
If abstract class contains one or more abstractmethods then subclass of it, can be abstract and still
can implements super class methods.
In other words,abstract class canimplement super
class abstractmethods
In other words,abstract class canimplement super
class abstractmethods
Perfectlyvalid
Perfectlyvalid
Abstractsub class
Abstractsuper class
![Page 91: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/91.jpg)
Abstract classes can containconstructors
![Page 92: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/92.jpg)
Abstract classes can contain staticmethods
![Page 93: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/93.jpg)
Abstract classes can contain staticmethods
![Page 94: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/94.jpg)
Abstract classes can contain staticmethods
![Page 95: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/95.jpg)
Abstract classes can contain staticmethods
Output
![Page 96: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/96.jpg)
Abstract classes can contain finalmethods
![Page 97: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/97.jpg)
Abstract classes can contain finalmethods
Perfectlyvalid
Perfectlyvalid
![Page 98: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/98.jpg)
An abstract class cannot beinstantiated
![Page 99: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/99.jpg)
An abstract class cannot beinstantiated
We can make reference ofabstract class
![Page 100: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/100.jpg)
An abstract class cannot beinstantiated
Error
We can make reference ofabstract class
![Page 101: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/101.jpg)
Example 8
![Page 102: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/102.jpg)
Example 9
![Page 103: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/103.jpg)
Characteristics summary
8. Abstract methods cannot be private. Theycan have public, protected or default accessspecifier.
9. Abstract class can extend non-abstract class.
![Page 104: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/104.jpg)
Abstract methods cannot be private
![Page 105: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/105.jpg)
Abstract methods cannot be private
ErrorError
![Page 106: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/106.jpg)
Abstract methods can use publicaccess specifier
![Page 107: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/107.jpg)
Abstract methods can use protectedaccess specifier
![Page 108: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/108.jpg)
Abstract methods can use defaultaccess specifier
![Page 109: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/109.jpg)
Abstract class can inherit non-abstractclass
![Page 110: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/110.jpg)
Abstract class can inherit non-abstractclass
Perfectlyvalid
Perfectlyvalid
![Page 111: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/111.jpg)
Complete Characteristics summary
1. Abstract class can be empty.(slide 2)2. Abstract class can be made without abstract methods. (slide 3)3. A non-abstract class cannot contain abstract method.(slide 4)4. Non-abstract class cannot contain abstract methods even there
are non abstract methods too.(slide 5)5. An abstract class can contain both abstract and non abstract
methods.(slide 6)6. Abstract class can be inherited like normal class(slide 7)7. If abstract class contains no abstract methods then subclass of it,
can be empty(slide 8)
![Page 112: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/112.jpg)
Complete Characteristics summary8. If abstract class contains one or more abstract methods then subclass of
it, can not be empty(slide 9)9. If abstract class contains one or more abstract methods then subclass of
it, can be empty, only if subclass is also abstract(slide 10)10. If a abstract class contains abstract methods then subclass must have to
implements(write code) for abstract methods, if subclass does not wantto be abstract(slide 11)
11. Abstract class can implement super class abstract methods. (slide 12)12. Abstract classes can contain final methods, constructors, static
methods.(slide 13,14,15)13. An abstract class cannot be instantiated, but we can make reference of
this class.(slide 16)14. Abstract methods cannot be private. They can have public, protected or
default access specifier.(slide 17,18,19,20)15. Abstract class can extend non-abstract class.(slide 21)
![Page 113: Abstract classes and Methods in java](https://reader034.vdocuments.site/reader034/viewer/2022050919/54626034b1af9fbc4d8b5201/html5/thumbnails/113.jpg)
Complete Characteristics summary
17.Class can be final or abstract, not both.(slide22)
18.Method be can be final or abstract notboth.(slide 23)