Hi 5
Hi 5
ProjectName : Inheritance_App8
packages,
ii
p1 : PClass.java
ath
package p1;
public class PClass
{
public int a;
aip
System.out.println("****PClass-Instance
Block****");
hM
System.out.println("The value a:"+a);
}
}
tes
p1 : CClass.java
package p1;
a
{
System.out.println("****CClass-Instance
Block***");
Ve
p2 : DemoInheritance8.java(MainClass)
package p2;
import p1.*;
import java.util.*;
ii
{
ath
Scanner s = new Scanner(System.in);
aip
System.out.println("Enter the value for a:");
ob.a = s.nextInt();
hM
System.out.println("****main()****");
s.close();
tes
}
a
nk
o/p:
****PClass-Instance Block****
Ve
****CClass-Instance Block***
120
****main()****
===================================================================
==
Note:
ii
ath
from CClass are executed.
==================================================================
faq:
aip
=>More than one method with same method name but differentiated by their
hM
Para_list or Para_type is known as Method Overloading process.
tes
Note:
which means we can perform Method Overloading using single class also.
Ve
packages,
p1 : PClass.java
package p1;
public class PClass {
public PClass(int a)
{
ii
System.out.println("****PClass(a)****");
System.out.println("a:"+a);
ath
}
public PClass(int a,int b)
{
this(a);
aip
System.out.println("****PClass(a,b)****");
System.out.println("a:"+a);
System.out.println("b:"+b);
hM
}
}
p1 : CClass.java
tes
package p1;
public class CClass extends PClass
{
a
{
super(a,b);
System.out.println("*****CClass(a,b,c)****");
Ve
System.out.println("a:"+a);
System.out.println("b:"+b);
System.out.println("c:"+c);
}
public CClass(int a,int b,int c,int d)
{
this(a,b,c);//3_para_Con_call
System.out.println("*****CClass(a,b,c,d)****");
System.out.println("a:"+a);
System.out.println("b:"+b);
System.out.println("c:"+c);
System.out.println("d:"+d);
}
}
p2 : DemoInheritance9.java(MainClass)
ii
ath
package p2;
import java.util.*;
import p1.*;
aip
hM
public static void main(String[] args) {
int a = s.nextInt();
int b = s.nextInt();
nk
int c = s.nextInt();
int d = s.nextInt();
o/p:
ii
Enter the value a:
ath
11
aip
12
14
tes
****PClass(a)****
a:11
a
nk
****PClass(a,b)****
a:11
Ve
b:12
*****CClass(a,b,c)****
a:11
b:12
c:13
*****CClass(a,b,c,d)****
a:11
b:12
c:13
d:14
ii
==================================================================
ath
Note:
=>while Object creation process we can call only one constructor for
aip
execution,but other Constructors can also be executed using Constructor
===================================================================
tes
ProjectName : Inheritance_App10
packages,
Ve
p1 : PClass.java
package p1;
public class PClass {
public void m1(int a)
{
System.out.println("****PClass m1(a)****");
System.out.println("a:"+a);
}
public void m1(int a,int b)
{
this.m1(a);//1_para_method_call
System.out.println("****PClass m1(a,b)****");
System.out.println("a:"+a);
System.out.println("b:"+b);
}
}
ii
p1 : CClass.java
ath
package p1;
public class CClass extends PClass
{
aip
public void m2(int a,int b,int c)
{
super.m1(a, b);//2_para_method_call
System.out.println("*****CClass m2(a,b,c)****");
hM
System.out.println("a:"+a);
System.out.println("b:"+b);
System.out.println("c:"+c);
}
tes
System.out.println("*****CClass m2(a,b,c,d)****");
System.out.println("a:"+a);
nk
System.out.println("b:"+b);
System.out.println("c:"+c);
System.out.println("d:"+d);
Ve
}
}
p2 : DemoInheritance10.java(MainClass)
package p2;
import java.util.*;
import p1.*;
ii
System.out.println("Enter the value a:");
ath
int a = s.nextInt();
aip
int b = s.nextInt();
int d = s.nextInt();
tes
ob.m2(a, b, c, d);//4_para_method_Call
s.close();
Ve
o/p:
11
Enter the value b:
12
13
ii
14
ath
****PClass m1(a)****
a:11
aip
****PClass m1(a,b)****
a:11
hM
b:12
*****CClass m2(a,b,c)****
a:11
tes
b:12
c:13
a
nk
*****CClass m2(a,b,c,d)****
a:11
Ve
b:12
c:13
d:14
=========================================================
Note:
=>we use "this" and "super" keywords to perform Instance methods
========================================================
ii
faq:
ath
Can we perform static method Interlinking process using "this" and "super"
keywords?
aip
=>No,we cannot Interlink static methods using "this" and "super" keywords
faq:
a
nk
=>yes,we can access static methods using "super" and "this" keywords,
Ve
ProjectName : Inheritance_App11
packages,
p1 : PClass.java
package p1;
public class PClass {
public static void m1(int a)
{
System.out.println("****PClass m1(a)****");
System.out.println("a:"+a);
}
public static void m1(int a,int b)
{
System.out.println("****PClass m1(a,b)****");
ii
System.out.println("a:"+a);
ath
System.out.println("b:"+b);
}
}
aip
p1 : CClass.java
package p1;
hM
public class CClass extends PClass
{
public static void m2(int a,int b,int c)
{
System.out.println("*****CClass m2(a,b,c)****");
tes
System.out.println("a:"+a);
System.out.println("b:"+b);
System.out.println("c:"+c);
a
}
nk
System.out.println("a:"+a);
System.out.println("b:"+b);
System.out.println("c:"+c);
System.out.println("d:"+d);
}
public void access(int a,int b,int c,int d)
{
super.m1(a);
super.m1(a, b);
this.m2(a, b, c);
this.m2(a, b, c, d);
}
}
p2 : DemoInheritance11.java(MainClass)
ii
package p2;
ath
import java.util.*;
import p1.*;
aip
public class DemoInheritance11 {
int a = s.nextInt();
tes
int b = s.nextInt();
nk
int c = s.nextInt();
Ve
int d = s.nextInt();
o/p:
ii
10
ath
Enter the value b:
20
aip
Enter the value c:
30
hM
Enter the value d:
40
****PClass m1(a)****
tes
a:10
****PClass m1(a,b)****
a
nk
a:10
b:20
Ve
*****CClass m2(a,b,c)****
a:10
b:20
c:30
*****CClass m2(a,b,c,d)****
a:10
b:20
c:30
d:40
===================================================================
=
ii
ath
Types of Inheritances:
1.Single Inheritance
2.Multiple Inheritance
3.Multi-Level Inheritance
aip
hM
4.Hierarchal Inheritance
5.Hybrid Inheritance
tes
Diagrams:
a
nk
Ve
ii
ath
aip
hM
tes
=================================================================
a
nk
Ve