Skip to main content

Method Overriding-1

Method Overriding:-Method overloading is a process of method re-redefining. In method overloading inheritance is a compulsory ,In this process  if child is not satisfy with the parent class implementation then child can redefine parent class method.
In method overriding parent class method must be available to the child class through inheritance.
In method overriding method signature must be same as parent class method.
In method overriding parameter must be same as parent class method.
In method overriding method resolution is done on the basis of object.
Method overriding is an example of run time polymorphism or dynamic binding or late binding. In this process visibility of parent class method can increase by the child class but cannot decrease.


Example1:-


class Teacher
{
void disp()
{
System.out.println("Parent implemented disp method");
}
}
class Student extends Teacher
{
void disp()
{
System.out.println("Child implemented disp method");
}
}
class Test
{
public static void main(String[]args)
{
Student s=new Student();
s.disp();
}
}

Output:-

C:\JAVATECH>javac Test.java
C:\JAVATECH>java Test
Child implemented disp method


Example2:-


class Teacher
{
public void disp()
{
System.out.println("Parent implemented disp method");
}
}
class Student extends Teacher
{
void disp()
{
System.out.println("Child implemented disp method");
}
}
class Test
{
public static void main(String[]args)
{
Student s=new Student();
s.disp();
}
}

Output:-

C:\JAVATECH>javac Test.java
Test.java:10: error: disp() in Student cannot override disp() in Teacher
void disp()
     ^
  attempting to assign weaker access privileges; was public
1 error


Example3:-


class Teacher
{
public void disp()
{
System.out.println("Parent implemented disp method");
}
}
class Student extends Teacher
{
public void disp()
{
System.out.println("Child implemented disp method");
}
}
class Test
{
public static void main(String[]args)
{
Student s=new Student();
s.disp();
}
}

Output:-

C:\JAVATECH>javac Test.java
C:\JAVATECH>java Test
Child implemented disp method


Example4:-


class Teacher
{
void disp()
{
System.out.println("Parent implemented disp method");
}
}
class Student extends Teacher
{
public void disp()
{
System.out.println("Child implemented disp method");
}
}
class Test
{
public static void main(String[]args)
{
Student s=new Student();
s.disp();
}
}


Output:-

C:\JAVATECH>javac Test.java
C:\JAVATECH>java Test
Child implemented disp method


Example5:-


class Teacher
{
void disp()
{
System.out.println("Parent implemented disp method");
}
}
class Student extends Teacher
{
protected void disp()
{
System.out.println("Child implemented disp method");
}
}
class Test
{
public static void main(String[]args)
{
Student s=new Student();
s.disp();
}
}

Output:-

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

Child implemented disp method

Comments

Popular posts from this blog

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...

Small concept about OOPs

Some small concept about OOPs:- In many books and website write about OOPs concepts as hundred percent object oriented, pure object oriented and partial object oriented language. Hundred percent object oriented:- In the hundred percent object oriented movie hero is object, without object program is incomplete that means can not execute program without object. Without class and object programming or application development is not possible. Example of hundred percent object oriented language is  Smalltalk . Pure object oriented:- In the object oriented cinema obviously object is the hero. In pure object oriented language object having same importance but in this having some relax that is without creating object we can successfully execute our application. So in the object oriented programming without class we cannot create or run our application, class is must. Example of pure object oriented language is  Java . Partial object oriented:- In this type of la...