జావాలో, మెథడ్ ఓవర్రైడింగ్ అనేది సబ్క్లాస్లో వారసత్వంగా వచ్చిన పద్ధతికి కొత్త అమలును అందించే ప్రక్రియ. సబ్క్లాస్ దాని సూపర్క్లాస్ నుండి ఒక పద్ధతిని వారసత్వంగా పొందినప్పుడు, అది దాని స్వంత అమలును అందించడానికి ఆ పద్ధతిని భర్తీ చేయగలదు. సబ్క్లాస్లోని పద్ధతి సంతకం తప్పనిసరిగా ఓవర్రైడ్ చేయబడే సూపర్క్లాస్ పద్ధతి యొక్క సంతకంతో సరిపోలాలి.
జావాలో మెథడ్ ఓవర్రైడింగ్ గురించి అర్థం చేసుకోవడానికి ఇక్కడ కొన్ని ముఖ్యమైన అంశాలు ఉన్నాయి:
పద్ధతి యొక్క సంతకం: సబ్క్లాస్లోని ఓవర్రైడ్ పద్ధతి యొక్క సంతకం తప్పనిసరిగా సూపర్క్లాస్లోని పద్ధతి యొక్క సంతకంతో సరిపోలాలి. సంతకం పద్ధతి పేరు, సంఖ్య మరియు పారామితుల రకం మరియు పద్ధతి యొక్క రిటర్న్ రకాన్ని కలిగి ఉంటుంది.
యాక్సెస్ మాడిఫైయర్లు: ఒక పద్ధతిని ఓవర్రైడ్ చేసినప్పుడు, సూపర్క్లాస్లో ఓవర్రైడ్ చేసిన పద్ధతి యొక్క యాక్సెస్ మాడిఫైయర్ సబ్క్లాస్లోని పద్ధతి యొక్క యాక్సెస్ మాడిఫైయర్ కంటే ఎక్కువ నియంత్రణను కలిగి ఉండదు. ఉదాహరణకు, సూపర్క్లాస్ పద్ధతి పబ్లిక్ అయితే, సబ్క్లాస్లోని ఓవర్రైడింగ్ పద్ధతి తప్పనిసరిగా పబ్లిక్ లేదా రక్షితమై ఉండాలి, కానీ ప్రైవేట్గా ఉండకూడదు.
మినహాయింపు నిర్వహణ: సబ్క్లాస్లోని ఓవర్రైడింగ్ పద్ధతి అదే మినహాయింపును లేదా సూపర్క్లాస్ పద్ధతి ద్వారా విసిరిన మినహాయింపు యొక్క సబ్క్లాస్ను విసిరివేయగలదు. అయినప్పటికీ, ఇది సూపర్క్లాస్ పద్ధతిలో ప్రకటించబడని తనిఖీ చేయబడిన మినహాయింపును విసిరివేయదు.
సూపర్ కీవర్డ్:
super
సబ్క్లాస్ నుండి ఓవర్రైడ్ పద్ధతి యొక్క సూపర్క్లాస్ వెర్షన్ని కాల్ చేయడానికి కీవర్డ్ ఉపయోగించబడుతుంది. ఇది సబ్క్లాస్లో సూపర్క్లాస్ పద్ధతి యొక్క కార్యాచరణను మళ్లీ ఉపయోగించడానికి మిమ్మల్ని అనుమతిస్తుంది, అదే సమయంలో కొత్త కార్యాచరణను కూడా జోడిస్తుంది.
జావాలో మెథడ్ ఓవర్రైడింగ్ యొక్క ఉదాహరణ ఇక్కడ ఉంది:
టైపుస్క్రిప్ట్class Animal {
public void makeSound() {
System.out.println("Animal makes a sound");
}
}
class Dog extends Animal {
@Override
public void makeSound() {
System.out.println("Dog barks");
}
}
public class Main {
public static void main(String[] args) {
Animal animal = new Animal();
Dog dog = new Dog();
animal.makeSound(); // Output: "Animal makes a sound"
dog.makeSound(); // Output: "Dog barks"
}
}
ఈ ఉదాహరణలో, తరగతి సాధారణ సందేశాన్ని ముద్రించే పద్ధతిని Animal
నిర్వచిస్తుంది మరియు తరగతి "కుక్క మొరలు" అని ముద్రించే దాని స్వంత అమలుతో ఈ పద్ధతిని భర్తీ చేస్తుంది. పద్ధతిని ఉదాహరణగా పిలిచినప్పుడు , అవుట్పుట్ "జంతువు ధ్వనిస్తుంది". ఏదేమైనప్పటికీ, అదే పద్ధతిని ఒక సందర్భంలో పిలిచినప్పుడు , అవుట్పుట్ "డాగ్ బార్క్స్"గా ఉంటుంది, ఇది మెథడ్ ఓవర్రైడింగ్ సబ్క్లాస్ను వారసత్వ పద్ధతికి దాని స్వంత అమలును అందించడానికి ఎలా అనుమతిస్తుంది అని చూపిస్తుంది.makeSound
Dog
makeSound
Animal
Dog
జావాలో మెథడ్ ఓవర్రైడింగ్ అనేది ఒక ముఖ్యమైన కాన్సెప్ట్, ఇది సబ్క్లాస్లో వారసత్వ పద్ధతుల ప్రవర్తనను అనుకూలీకరించడానికి మిమ్మల్ని అనుమతిస్తుంది. సబ్క్లాస్లో పద్ధతి యొక్క మీ స్వంత అమలును అందించడం ద్వారా, మీరు కొత్త కార్యాచరణను జోడించవచ్చు లేదా మీ అవసరాలకు అనుగుణంగా సూపర్క్లాస్ పద్ధతి యొక్క ప్రవర్తనను సవరించవచ్చు.