1. తిమింగలాలు మరియు ఆవులు

ఇక్కడ ఒక ఆసక్తికరమైన జంతుశాస్త్ర వాస్తవం ఉంది: ఒక ఆవు తిమింగలం కంటే చాలా దగ్గరగా ఉంటుంది, ఉదాహరణకు, హిప్పోపొటామస్ కంటే. ఆవులు మరియు తిమింగలాలు సాపేక్షంగా దగ్గరి బంధువులు అని తేలింది.

ఇక్కడ చూడండి. OOP యొక్క మరొక శక్తివంతమైన సాధనం — పాలిమార్ఫిజం గురించి మీకు చెప్తాము . ఇందులో నాలుగు ఫీచర్లు ఉన్నాయి.


2. వారసత్వం సర్వరోగ నివారిణి కాదు

Cowమీరు ఆట కోసం ఒక తరగతి వ్రాసినట్లు ఊహించుకోండి . దీనికి అనేక రంగాలు మరియు పద్ధతులు ఉన్నాయి. ఈ తరగతికి చెందిన వస్తువులు వివిధ పనులను చేయగలవు: నడవడం, తినడం మరియు నిద్రపోవడం. ఆవులు నడిచేటప్పుడు మోగించే గంటను కూడా ధరిస్తారు. మీరు తరగతిలోని ప్రతిదాన్ని అతి చిన్న వివరాలకు అమలు చేశారని అనుకుందాం.

ఆపై మీ క్లయింట్ వచ్చి, ఆమె కొత్త గేమ్ స్థాయిని విడుదల చేయాలనుకుంటున్నట్లు చెప్పింది, దీనిలో అన్ని చర్యలు సముద్రంలో జరుగుతాయి మరియు ప్రధాన పాత్ర ఒక తిమింగలం.

మీరు Whaleతరగతిని రూపకల్పన చేయడం ప్రారంభించి, అది తరగతికి కొద్దిగా భిన్నంగా ఉందని గ్రహించండి Cow. రెండు తరగతుల తర్కం చాలా పోలి ఉంటుంది మరియు మీరు వారసత్వాన్ని ఉపయోగించాలని నిర్ణయించుకుంటారు.

జావాలో పాలిమార్ఫిజం

Cowమాతృ తరగతి పాత్రను స్వీకరించడానికి తరగతి అనువైనది: దీనికి అవసరమైన అన్ని వేరియబుల్స్ మరియు పద్ధతులు ఉన్నాయి . మనం చేయాల్సిందల్లా తిమింగలానికి ఈత కొట్టే శక్తిని ఇవ్వడం. కానీ ఒక సమస్య ఉంది: మీ తిమింగలం కాళ్లు, కొమ్ములు మరియు గంటను కలిగి ఉంది. అన్ని తరువాత, ఈ కార్యాచరణ Cowతరగతి లోపల అమలు చేయబడుతుంది. ఇక్కడ ఏమి చేయవచ్చు?

జావాలో పాలిమార్ఫిజం.  వారసత్వం

3. మెథడ్ ఓవర్‌రైడింగ్

మెథడ్ ఓవర్‌రైడింగ్ మన రక్షణకు వస్తుంది. మా కొత్త తరగతిలో మనకు కావలసినది చేయని పద్ధతిని మనం వారసత్వంగా పొందినట్లయితే, మేము ఆ పద్ధతిని మరొక దానితో భర్తీ చేయవచ్చు.

పద్ధతి ఓవర్‌రైడింగ్

ఇది ఎలా జరుగుతుంది? మా సంతతి తరగతిలో, మేము భర్తీ చేయాలనుకుంటున్న మాతృ తరగతి యొక్క పద్ధతి వలె అదే పద్ధతిని ప్రకటిస్తాము. మేము దానిలో మా కొత్త కోడ్ వ్రాస్తాము. అంతే — మాతృ తరగతిలో పాత పద్ధతి లేనట్లే.

ఇది ఎలా పని చేస్తుంది:

కోడ్ వివరణ
class Cow
{
   public void printColor ()
   {
      System.out.println("I'm a white whale");
   }

   public void printName()
   {
      System.out.println("I'm a cow");
   }
}

class Whale extends Cow
{
   public void printName()
   {
      System.out.println("I'm a whale");
   }
}
  • ఇక్కడ రెండు తరగతులు నిర్వచించబడ్డాయి - CowమరియుWhale
  • Whaleవారసత్వంగా పొందుతుందిCow
  • తరగతి పద్ధతిని Whaleభర్తీ చేస్తుందిprintName()
public static void main(String[] args)
{
   Cow cow = new Cow();
   cow.printName();
}
ఈ కోడ్ స్క్రీన్‌పై కింది వచనాన్ని ప్రదర్శిస్తుంది:
I'm a cow
public static void main(String[] args)
{
   Whale whale = new Whale();
   whale.printName();
}
ఈ కోడ్ స్క్రీన్‌పై కింది వాటిని ప్రదర్శిస్తుంది:
I'm a whale

తరగతిని వారసత్వంగా పొందిన తర్వాత Cowమరియు printNameపద్ధతిని భర్తీ చేసిన తర్వాత, Whaleతరగతి వాస్తవానికి క్రింది డేటా మరియు పద్ధతులను కలిగి ఉంటుంది:

class Whale
{
   public void printColor()
   {
      System.out.println("I'm a white whale");
   }

   public void printName()
   {
      System.out.println("I'm a whale");
   }
}
పాత పద్ధతి గురించి మాకు తెలియదు.