0% found this document useful (0 votes)
61 views

Keywords and Classes

This document discusses keywords in Java including this, super, final, and static. It provides examples and explanations of how each keyword is used: 1) The final keyword is used to declare variables that can only be assigned once, prevent overriding methods, and prevent inheritance of classes. 2) The super keyword is used to invoke parent constructors and methods from subclasses, and to access parent data members when there are name conflicts. 3) The static keyword declares class members that are shared across all instances rather than being instance-specific. Static methods can be called without creating an object.

Uploaded by

Ajay
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
61 views

Keywords and Classes

This document discusses keywords in Java including this, super, final, and static. It provides examples and explanations of how each keyword is used: 1) The final keyword is used to declare variables that can only be assigned once, prevent overriding methods, and prevent inheritance of classes. 2) The super keyword is used to invoke parent constructors and methods from subclasses, and to access parent data members when there are name conflicts. 3) The static keyword declares class members that are shared across all instances rather than being instance-specific. Static methods can be called without creating an object.

Uploaded by

Ajay
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 20

Modern Programming Tools And

Techniques-I
Lecture 9: This, Super & Final Keywords
Contents
• Object class
• super keyword
• final keyword
• final class
• static keyword
• this keyword
Object Class
 There is one special class, called Object, defined by Java.
 All other classes are subclasses of Object. i.e., Object is a
super-class of all other classes.
 A reference variable of type Object can refer to an object of
any other class.
 The Object class defines the basic state and behavior that all
objects must have.
 Arrays are implemented as classes, so a variable of type
Object can also refer to any array.
 In Object class, getClass( ), notify( ), notifyAll( ), and wait( )
are declared as final.
Methods in Object class
‘final’ Keyword
• ‘final’ keyword is used to:
– declare variables that can be assigned value only once.
final type identifier = expression;

– prevent overriding of a method.


final return_type methodName (arguments if any)
{
body;
}

– prevent inheritance from a class.


final class Class_Name
{
class body;
}
‘super’ Keyword
• ‘super’ keyword is used to:
– invoke the super-class constructor from the constructor
of a sub-class.
super (arguments if any);

– invoke the method of super-class on current object


from sub-class.
super.methodName (arguments if any);

– refer the super-class data member in case of name-


conflict between super and sub-class data members.
super.memberName;
‘static’ Keyword
• used to represent class members
• Variables can be declared with the “static” keyword.
static int y = 0;
• When a variable is declared with the keyword “static”, its called
a “class variable”.
• All instances share the same copy of the variable.
• A class variable can be accessed directly with the class, without
the need to create a instance.

• Note: There's no such thing as static classs. “static” in front of


class creates compilation error.
Example
static methods
• Methods can also be declared with the keyword “static”.
• When a method is declared static, it can be used without creating an
object.

class T2 {
static int triple (int n)
{return 3*n;}
}

class T1 {
public static void main(String[] arg)
{
System.out.println( T2.triple(4) );
T2 x1 = new T2();
System.out.println( x1.triple(5) );
}
}
• Methods declared with “static” keyword are called “class
methods”.
• Otherwise they are “instance methods”.
• Static Methods Cannot Access Non-Static Variables.
• The following gives a compilation error, unless x is also static.
class T2 {
int x = 3;
static int returnIt () { return x;}
}

class T1 {
public static void main(String[] arg) {
System.out.println( T2.returnIt() ); }
}
Properties of static & non-static method
‘this’ Keyword
• 'this' is used for pointing the current class instance.
• Within an instance method or a constructor, this is a reference to
the current object — the object whose method or constructor is
being called.
class ThisDemo1{
int a = 0;
int b = 0;
ThisDemo1(int x, int y)
{
this.a = x;
this.b = y;
}

public static void main(String [] args)


{
ThisDemo1 td = new ThisDemo1(10,12);
ThisDemo1 td1 = new ThisDemo1(100,23);
System.out.println(td.a);
System.out.println(td.B);
System.out.println(td1.a);
System.out.println(td1.B);
}
}
Chaining of constructors using this keyword
• Chaining of constructor means calling one constructor
from other constructor.
class ThisDemo{
public ThisDemo() {
this(10); System.out.println("First Constructor");
}
public ThisDemo(int a) // overloaded constructor
{
this(10,20); System.out.println("Second Constructor");
}
public ThisDemo( int a, int B) // another overloaded constructor
{
this(“Ravi Kant"); System.out.println("Third Constructor");
}
public ThisDemo(String s) // and still another
{
System.out.println("Fourth Constructor");
}
public static void main(String args[]) {
ThisDemo first = new ThisDemo();
}
}
Visibility modifiers Example
Visibility modifiers Example
Visibility modifiers Example
Visibility modifiers

You might also like