Skip to main content

inheritance

INHERITANCE:-Inheritance is the process of code re-usability, using this property software or applications can develop in less time or can develop rapidly. Inheritance increases the readability of code and decrease redundancy or repetition of code or reduces size of code.
Use of previously developed code in future any number of times is called inheritance. Through inheritance variables and methods of class can inherited.

Types of Inheritance:-
1)      Single or Single level inheritance
2)      Multilevel inheritance
3)      Hierarchical inheritance

Java does not support to multiple inheritance.

Single or single level inheritance:-In a single inheritance a class is inherited by a single class. In a single or single level inheritance a sub class having only one super class directly or indirectly.
Syntax: -        class Subclass extends Superclass
Here extends is a keyword used for inheritance in java language.

Example1:-Sum of two numbers without using inheritance.


class Student
{
int a,b;
void sum()
{
a=10;
b=20;
System.out.println("sum= "+(a+b));
}
public static void main(String[]args)
{
Student s=new Student();
s.sum();
}
}

Output:-

C:\JAVATECH>javac Student.java
C:\JAVATECH>java Student

sum= 30


Here Student class have a code to do sum of two numbers, if another class like Test want to perform same operation (sum of two numbers) than Test class minimum required two variables for holding values and a function to perform addition of variables.


Example2:-Student.java


class Test
{
int a,b;
void add()
{
a=100;
b=200;
System.out.println("sum of = "+(a+b));
}
}
class Student
{
int a,b;
void sum()
{
a=10;
b=20;
System.out.println("sum= "+(a+b));
}
public static void main(String[]args)
{

Student s=new Student();
s.sum();
Test t=new Test();
t.add();
}
}

Output:-

C:\JAVATECH>javac Student.java
C:\JAVATECH>java Student

sum= 30
sum of = 300


In the above example both the classes perform same operation and sum method of Student class, add method of Test class having same code or duplicate code.


Example3:- Sum of two numbers using inheritance.

class Test extends Student
{
}
class Student
{
int a,b;
void sum()
{
a=10;
b=20;
System.out.println("sum= "+(a+b));
}
public static void main(String[]args)
{

Student s=new Student();
s.sum();
Test t=new Test();
t.sum();
}
}

Output:-

C:\JAVATECH>javac Student.java
C:\JAVATECH>java Student

sum= 30
sum= 30


Example4:- Sum of two numbers using inheritance.


class Student
{
int a,b;
void sum()
{
a=10;
b=20;
System.out.println("sum= "+(a+b));
}
public static void main(String[]args)
{

Student s=new Student();
s.sum();
Test t=new Test();
t.sum();
}
}
class Test extends Student
{
}

Output:-

C:\JAVATECH>javac Student.java
C:\JAVATECH>java Student
sum= 30
sum= 30


Example5:- Sum of two numbers using inheritance (Test1.java).


class Student
{
int a,b;
void sum()
{
a=10;
b=20;
System.out.println("sum= "+(a+b));
}
}
class Test extends Student
{
}
class Test1
{
public static void main(String[]args)
{
Test t=new Test();
t.sum();
}
}

Output:-

C:\JAVATECH>javac Test1.java
C:\JAVATECH>java Test1


sum= 30


Comments

Popular posts from this blog

Regarding class files

Class files:- Regarding class file or dot class file also known as byte code of class, in a java programming language we can use any number of classes in our program. After compilation all classes convert into individual   .class   file. Example:- class A { } class B { } class C { } class Student { public static void main(String[]args) { System.out.println("Well-come to my java blog"); } } We can save above program to any   classname.java   or we can use any other   name.java,   there is no compulsion for java file name. But recommended to save by that class name which having main method. I saved the above file to   Student.java   name .   Before compilation my   C:\JAVATECH   folder contain only one java file. Student.java For  compilation. C:\JAVATECH>javac  Student.java After compilation   my   C:\JAVATECH   folder contains five files, on...

Inner classes

Inner Classes:- class inside class or interface called inner class or nested class. Advantage of inner classes is grouping multiple classes and interfaces into a single class. Another big advantage of inner class is that inner class can happily access all the data or variables of outer class directly. Types of Nested classes:- There are two types of nested classes static and non-static nested classes. (A)Non –static inner classes:- 1)     Member inner class 2)     Anonymous inner class 3)     Local inner class (B)Static nested class Example1:-Outer.java class Outer { class Inner { void disp() { System.out.println("Hello This is Inner class Method"); } } public static void main(String[]args) { Inner in=new Inner(); in.disp(); } } Output:- C:\JAVATECH>javac Outer.java Outer.java:12: error: non-static variable this cannot be referenced from a static context Inner in=new Inner(); ...

Inheritance-4

Example10:- class Student { Student() { System.out.println("This is super class Zero argument constructor"); } Student(String s) { System.out.println("This is super class One argument constructor"); } } class Test extends Student { Test() { super(null); System.out.println("This is sub class Zero argument constructor"); } public static void main(String[]args) { Test t=new Test(); } } Output:- C:\JAVATECH>javac Test.java C:\JAVATECH>java Test This is super class One argument constructor This is sub class Zero argument constructor Example11:- class Student { Student() { System.out.println("This is super class Zero argument constructor"); } Student(String s) { System.out.println("This is super class One argument constructor"); } } class Test extends Student { Test() { super(); super(null); System.out.println("This is su...