Skip to main content

Inheritance in Apex

Inheritance in Apex


Inheritance in Apex is a mechanism by which one object acquires all the properties and behaviors of parent object.

The idea behind inheritance in Apex is that you can create new classes that are built upon existing classes. Whenever you inherit from an existing class, you can reuse methods and fields of parent / super class, as well as you can add new methods and fields also based on the requirements.


Reason to use inheritance :

  • For Method Overriding (to achieved runtime polymorphism).
  • For Code Reusability

Various term used in inheritance :

  1. Class: A class is a concept/prototype/template of common properties, from which objects are created.
  2. Child Class/Sub Class: Child class is a class which inherits the other class, known as child class. It is also called extended class, derived class, or sub class.
  3. Parent Class/Super Class: Parent class is the class from which a subclass inherits the features. It is also called a Super class or a base class.
  4. Virtual: The virtual modifier declares that this class allows for extension and overrides.
  5. Override: You cannot override a method with the override keyword in the child class unless the class and method have been defined as virtual.

Example ,

here I have created a parent class and declared it as virtual , so that it can be inherited by child / other class.
public virtual class ParentClass {

    public void showDataParent() {
        System.debug('This is Parent-Class');
    }
    
}

here I have created a child 
public class ChildClass extends ParentClass {
    
    public void showDataChild() {
        System.debug('This is Child-Class');
    }

}
Now create an object of ChildClass apex class.
ChildClass objChildClass = new ChildClass(); // child-class object created.

objChildClass.showDataChild(); objChildClass.showDataParent();
See the output :


By : Harshal Lad 

Comments

Post a Comment

Popular posts from this blog

Apex Triggers and Classes

  Apex Triggers   is use to execute the functionality or piece of code on record manipulation ( i.e., CREATE / UPDATE / DELETE / UNDELETE   records ). A trigger executes before and after an event occurs on record.

Salesforce Development Index

C ourse C ontent Declarative Features Vs Programmatic Features Salesforce Architecture ( MVC ) Data Types Apex Classes If – Conditional and loops Collections in APEX List Set Map Oops Concepts Inheritance Polymorphism Encapsulation Abstraction Data Manipulation Language (SOQL) & SOSL Exception Handling Triggers and its Best Practices Custom Setting, Custom Metadata and Custom Labels Where to use it ? How to use it ? Apex Trigger + Custom Setting Asynchronous Apex Batch Classes Scheduler Classes Queueable Classes Future Method Apex Governor Limits Test Classes for Triggers and Apex classes Visualforce Pages Standard Controllers Extension Controllers Custom Controllers Wrappers Classes in Apex By : Harshal Lad ( CorpoVision Te...

Polymorphism in Apex

Polymorphism in Apex P olymorphism in simple word can be said as  One name many forms. For example , a man can play a role as an Employee, as a Father or as a Husband in his day-to-day life. It means that he can be in any of these form.  Polymorphism can be achieved by these two ways : Method Overloading Method Overriding Method Overloading If a class have multiple methods with same name but different parameters (either different length of the arguments or different data types of the arguments), it is known as Method Overloading. If we have to perform only one operation, with the same name of the methods increases the readability of the program as well as its very logical too. Let’s suppose if we want to perform addition of the given numbers but there can be any number in arguments as below: Example of method over...