Introduction to Java Inheritance and Java constructors Note in Hindi



Introduction to Java Inheritance 

Java में inheritance का concept बहुत ही interesting है। यह हर programmer की day to day life में बहुत सा समय की बचत करता है और workload को कम करता है।

जैसे पिता की संपत्ति पर पुत्र का अधिकार होता है और पुत्र उस संपति का उपयोग करता है। वैसे ही यदि आप चाहे तो एक class को पिता (super class) बना सकते है, और दूसरी class को पुत्र (sub class) बना सकते है। ऐसा करने से एक class दूसरी class की properties (methods, variables etc  ) को access कर सकती है। ऐसा करने से पुत्र (sub class) को पिता (super class) की सम्पूर्ण property (methods, variables etc को access करने के अधिकार हासिल  हो जाते है।

Use Methods/Variables of Existing Class

कल्पना कीजिये आपने कोई class पहले से create की हुई है और इस class में कुछ ऐसे methods है जो आपकी किसी दूसरी class में भी काम सकते है। Java inheritance feature की मदद से इन methods को दुबारा लिखने की बजाय आप पिछली पुरानी class में से उन methods को access कर सकते है।

A Class Extend Another Class

ऐसा करने के लिए जो class methods को access करना चाहती है उसे दूसरी class की sub class बनना होगा। Sub class बनने के लिए आपकी class को उस दूसरी class को extend करना होगा। इसे ही java में inheritance कहते है। 

No Need to Write Same Code Again

Java के inheritance feature से आप एक ही code को बार बार लिखने की उलझन से बच जाते है। Inheritance की इस खूबी को re-usability कहते है। यानि एक ही code को बार बार अलग अलग जगह पर reuse किया जा सकता है। 

extends Keyword

जब कोई एक class दूसरी class को inherit करना चाहती है तो वह extends keyword Use  करती है। Java में inheritance perform करने के लिए extends keyword का इस्तमाल करना  जरुरी  है।

Classes with Final Keyword Can Not Be Inherited

जिन classes के नाम से पहले final keyword होता है उन्हें inherit नहीं किया जा सकता है। इसलिए यदि आप कोई ऐसी class create करना चाहते है जिसे कोई inherit करे तो final keyword का इस्तमाल  करते है।

Multiple Inheritance Not Allowed

कोई भी class सिर्फ एक ही class को extend कर सकती है। जब कोई class एक से ज्यादा  classes को extend करती है तो वह multiple inheritance कहलाता है। और में आपको बताना चाहता हुँ की Java  में multiple inheritance allow नहीं है। इसकी जगह पर आप multilevel inheritance implement कर सकते है। जिस class को inherit किया जाता है वह super class कहलाती है। और जो class inherit करती है वह subclass कहलाती है।

Only Public and Protected Members Can Be Accessed

यँहा पर एक ध्यान देने की  बात ये है की sub class super class के सभी methods और variables को access नहीं कर सकती है। जो methods public और protected declare किये हुए है उन्हें ही sub class access कर सकती है। Super class के किसी भी private member को subclass access नहीं कर सकती है। यदि super class ने किसी और class को extend कर रखा है तो उस class के भी सभी public और protected members को आपकी class Use  कर सकती है।

Types of Java Inheritance           

Java में 3 तरह से inheritance को Use  किया जाता है। आपकी application के लिए आपको जो suitable लगे आप वही तरीका Use  कर सकते है। इन तीनों तरीकों के बारे में निचे दिया जा रहा है। 

Single Inheritance :-

Single inheritance में एक class किसी दूसरी Class  को extend करती है। इस तरह के के inheritance का इस्तमाल  basic programming में किया जाता है। 

Multilevel Inheritance:- 

Multilevel inheritance में एक class दूसरी class को extend करती है और दूसरी class तीसरी class को extend करती है। 

Hierarchical Inheritance :-

Hierarchical inheritance में एक class को बहुत सी classes extend करती है। इस तरह  inheritance का इस्तमाल  जब किया जाता तब  super class के task के कई sub task होते है। 

Inheriting a Java Class 

यदि आप किसी class को inherit करना चाहते है तो आप extends keyword उसे करते है। आप अपनी class के नाम के बाद extends keyword लगाते है। और उसके बाद आप जिस class को inherit करना चाहते है उस class का नाम लिखते है।  

Example1: Inherit a java class

class A {

 

  public void display()

 

  {

 

    System.out.println("This is A class");

 

  }

 

}

 

class B extends A {

 

  public static void main(String args[])

 

  {

 

    display();

 

 

}  }



 

Introduction to Java Constructors 

यदि आप object को use करने से पहले कुछ task perform करना चाहते है जैसे की variable को initialize करना आदि तो आप java constructor create करते है। Objects को Use  करने से पहले जो जरुरी काम आप करना चाहते है वो सब आप constructor में कर सकते है। 

मिसाल के तौरपर आप जिस class का object create कर रहे है उसके variables में कोई values नहीं है। ये values आप user से object create करते समय input करवाना चाहते है। Object CREATE  करते समय user values(arguments) pass करता है। अब आप को इन values को अपनी class के variables को assign करना है। ये काम आप constructor के through करते है।

यदि आप constructor में उन values को assign नहीं करते है तो java के जरिये  default constructor call किया जाता है। और सभी class member variables को initial values assign हो जाती है। Constructors java के memory allocation process का part है।   

Java constructors की कुछ characteristics होती है। इन्हे आप constructors Create  करने के rules भी कह सकते है।  

एक method की तरह ही होता है। 

इसका नाम class के नाम जैसा ही होता है। 

कोई return type नहीं होता है। 

Types of Java Constructors 

Java में 4 तरह के constructors होते है। इन सभी के बारे में निचे दिया जा रहा है। 

Default Constructor:-

जब आप कोई constructor create नहीं करते है तो java automatically default constructor call करती है। ये constructor सभी variables को उनके data type के according initial value के साथ memory allocate कर देता है। 

Normal Constructor :-

ये java constructor आप खुद create करते है। और इसकी body में class variables को खुद ही compile time पर initialize करते है।

Example1: Declare normal constructor

class Person

 

{

 

  String Name;

  int age;

 

  Person() //Constructor

 

  {

 

    Name = "Vipin"

 

    age = 24;

 

  }

 

  public void display()

 

  {

 

    System.out.println("Name is : "+Name+" Age is: "+age);

 

    }

  }

 

  class NorCon {

    public static void main(String args[])

 

    {

 

      Person p1 = new Person();

 

      p1.display();

 

    }

 

  }

Parameterized Constructors :-

Java constructors में आप parameters भी pass कर सकते है। Objects Create  करते वक्त  आप variables की value arguments की तरह pass कर सकते है। ये values आप constructor में variables को assign कर सकते है।

Example2: A Constructor with two parameters

class Person

 

{

 

  String Name;

  int age;

 

  Person(String n, int a) {

 

    Name = n;

 

    age = a;

 

  }

 

  public void display()

 

  {

 

    System.out.println("Name is : "+Name+" Age is: "+age);

    }

  }

 

  class ParaCon {

 

    public static void main(String args[])

 

    {

 

      Person p1 = new Person("Vipin", 24);

      p1.display();

    }

 

  }

Copy Constructor:-

Java में copy constructor को किसी object की copy करने के लिए Use  किया जाता है। जब आप एक object की value दूसरे object में copy करते है तो दोनों objects ही same values को point करते है। Copy constructors में आप class का object create करते समय उसी class का दूसरा object argument की तरह pass करते है। 

Example3: Constructor copying one object to other

class Person

 

{

  String Name;

 

  int age;

 

  Person(String n, int a)

 

  {

 

    Name = n;

 

    age = a;

 

  }

 

  Person(Person p) // Copy Constructor

  for p2 object

 

  {

 

    Name = p.Name;

 

    age = p.age;

 

  }

 

  public void display()

 

  {

 

    System.out.println("Name is: "+Name+" Age is: "+age);

 

    }

  }

 

  class CopyCon {

 

    public static void main(String args[])

 

    {

 

      Person p1 = new

      Person("Vipin", age);

 

      Person p2 = new Person(p1);

      p1.display();

 

      p2.display();

 

    }

 

  }

 


Tausif

Hi! My name is TAUSIF AHMAD I have completed B.Tech in Computer Science from Maulana Azad National Urdu University Hyderabad. I am always ready to have new experiences meet new people and learn new things. 1. I am very interested in Frontend Development. 2. I love video editing and graphics designing. 3. I enjoy challenges that enables to grow. 4. I am part time Blogger.

Post a Comment (0)
Previous Post Next Post