ALL >> Education >> View Article
Usage Of Super And Final Keyword
A superclass constructor must execute before a subclass constructor. So that the state and behaviour defined by the superclass may be correctly and completely initialized before a subclass constructor executes.
Java compiler assumes that the first line of every constructor is an implicit call to the default superclass constructor unless you explicitly use super().super keyword is used to explicitly invoke a superclass constructor. it must appear as the first statement of the constructor to ensure that the superclass constructor executes before the subclass constructor in java.
Syntax:
super(arg);
The above is the syntax for calling superclass constructor.arg is optional list of arguments of the superclass constructor. You cannot use both super() and this() at the same time in same constructor.
Example for calling super class constructor:
class One
{
One()
{
System.out.println("Constructor of One class");
}
}
class Two extends One
{
Two()
{
//super will be inserted here by default
System.out.println("Constructor ...
... of Two class");
}
}
class Three extends Two
{
Three()
{
//super will be inserted here by default
System.out.println("Constructor of Three class");
}
}
class MainClass
{
public static void main(String args())
{
Three obj = new Three();
}
}
Output:
Constructor of One class
Constructor of Two class
Constructor of Three class
Super keyword is also to call the superclass overridden method.
Advantages:
->super keyword is used to refer immediate parent class instance variable
->super() is used to invoke immediate parent class constructor
->super is used to invoke immediate parent class method
This is an important topic in the SCJP (now known as OCJP) certification, and should be well understood by the aspirants.
Final Keyword:
final is a keyword or reserved word in java and can be applied to member variables, methods, class and local variables in Java. Once you make a reference final you are not allowed to change that reference and compiler will verify this and raise compilation error if you try to re-initialized final variables in java
final Variable:
Any variable declared as final either in block or method they cant be modified.final variables are by default read only.
Example:
public static final String var = "whizlabs";
var=new String(“SCJP”); // compilation error.
final method:
A java method with final keyword is called final method and it cannot be overridden in sub-class. You should make a method final in java if you think it’s complete and its behaviour should remain constant in sub-classes. Final methods are faster than non-final methods because they are not required to be resolved during run-time and they are bonded on compile time.
Example:
class One{
public final String call(){
return "This is from One";
}
}
class Two extends One{
public final String call(){
return "This is from Two"; //compilation error: overridden method is final
}
}
final Class:
Final class is complete in nature and cannot be sub-classed or inherited. Several classes in Java are final e.g. String, Integer and other wrapper classes
Example:
final class One{}
class Two extends One{} // compilation error :cannot inherit final class
This is also an important part of the SCJP 6 certification course however aspirants who are preparing for OCAJP certification course should also look into this topic.
Author of the article is associated with Whizlabs, the global provider of certification preparation course material for Java, Project Management, and CCNA.
Add Comment
Education Articles
1. Write My AssignmentAuthor: Assignment Mentor UK
2. Diy, Robotics, And Innovation Kits — Building Tomorrow’s Innovators, One Project At A Time
Author: stem-xpert
3. How Ncrd Sims Mumbai Prepares Students For Industry 4.0 Careers
Author: Priya Roy
4. Guidewire Policycenter Training: Real-world Applications You Need To Know
Author: Yogesh Waran
5. Microsoft Dynamics 365 Training In Hyderabad | Finance Operations
Author: Hari
6. Top 5 Common Hipaa Violations And How To Avoid Them
Author: Prabhakar Pandey
7. How To Use Virtual Environments In Python Effectively
Author: lakshmimonopoly
8. Pgdm Colleges In Mumbai With Low Fees: Affordable Education For Your Bright Future
Author: Durgadevi Saraf Global Business School
9. Aws Devops Course Online | Devops Online Training
Author: Visualpath
10. Master Site Reliability Engineering Training Online Today
Author: krishna
11. Sap Papm Certification Course Online | Sap Papm Training
Author: naveen
12. The Future Of Itil: Trends To Watch In It Service Management
Author: Dorothy Benson
13. A Complete Guide To Tempering Chocolate Methods: Achieve Perfect Shine Every Time
Author: Candy DeSouza
14. A Complete Guide To The Best Schools In Jp Nagar: Top Choices For Your Child’s Future
Author: My School Admission
15. Building Emotional Intelligence In Early And Middle School Students
Author: Saurabh Singh






