జావాలో పాలిమార్ఫిజం: పద్ధతులను ఓవర్‌లోడ్ చేయడం లేదా ఓవర్‌రైడ్ చేయడం ఎలా

జావాలో పాలిమార్ఫిజం: పద్ధతులను ఓవర్‌లోడ్ చేయడం లేదా ఓవర్‌రైడ్ చేయడం ఎలా

మెథడ్ ఓవర్‌లోడింగ్ మరియు ఓవర్‌రైడింగ్ అనేది జావా పాలిమార్ఫిజమ్‌ను ప్రదర్శించే రెండు మార్గాలు. పాలిమార్ఫిజం రెండు గ్రీకు పదాల కలయిక నుండి వచ్చింది: 'పాలీ' అంటే అనేక మరియు 'మార్ఫ్' అంటే రూపం. అందువల్ల, పాలిమార్ఫిజం అనేక రూపాలను తీసుకోవడానికి పద్ధతులను అనుమతిస్తుంది.





జావాలో ఓవర్‌లోడ్ చేయడం లేదా ఓవర్‌రైడ్ చేయడం ఎలాగో తెలుసుకోవడానికి ఈ గైడ్‌ని అనుసరించండి.





పద్ధతి ఓవర్‌లోడింగ్ అంటే ఏమిటి?

'మెథడ్ ఓవర్‌లోడింగ్' అనేది ఒక క్లాస్‌లో ఒకే పేరుతో విభిన్న పద్ధతులను నిర్వచించడాన్ని సూచిస్తుంది. పద్ధతులు వేర్వేరు సంతకాలను కలిగి ఉండాలి. ఒక పద్ధతి సంతకం అంటే ఒక పద్ధతి పేరు మరియు పరామితి జాబితా కలయిక. ఇది రిటర్న్ రకాన్ని కలిగి ఉండదు.





కంపైలర్ రకం, పారామీటర్‌ల సంఖ్య మరియు అవి ఉంచబడిన క్రమాన్ని తనిఖీ చేయడం ద్వారా ఏ పద్ధతిని ఉపయోగించాలో తెలుసు.

సంబంధిత: జావా ప్రోగ్రామింగ్ లాంగ్వేజ్‌లో వారసత్వాన్ని అన్వేషించడం



పద్ధతి ఓవర్‌లోడింగ్ కంపైల్-టైమ్ పాలిమార్ఫిజమ్‌ను ప్రదర్శిస్తుంది. కంపైల్-టైమ్ పాలిమార్ఫిజం అంటే జావా కంపైలర్ ఒక వస్తువును రన్‌టైమ్‌లో దాని కార్యాచరణకు బంధిస్తుంది. దీనిని సాధించడానికి కంపైలర్ పద్ధతి సంతకాలను తనిఖీ చేస్తుంది.

ఈ రకమైన పాలిమార్ఫిజంను స్టాటిక్ లేదా ఎర్లీ బైండింగ్ అని కూడా అంటారు.





దిగువ పద్ధతి ఓవర్‌లోడింగ్ ఉదాహరణను చూడండి:

class Arithmetic{
int cube(int x){
return x*x*x;
}
double cube(double x){
return x*x*x;
}
float cube(float x){
return x*x*x;
}
public static void main(String[] args){
Arithmetic myMultiplication = new Arithmetic();
System.out.println('The cube of 5 is ' + myMultiplication.cube(5));
System.out.println('The cube of 5.0 is ' + myMultiplication.cube(5.0));
System.out.println('The cube of 0.5 is ' + myMultiplication.cube(0.5));
}
}

అవుట్‌పుట్:





The cube of 5 is 125
The cube of 5.0 is 125.0
The cube of 0.5 is 0.125

పైన ఉన్న కోడ్ మీరు వివిధ రకాల క్యూబ్‌ను ఎలా పొందవచ్చో చూపుతుంది ( int , రెట్టింపు , తేలుతాయి ) అదే పద్ధతిని ఉపయోగించి.

సాధారణంగా, పద్దతి ఓవర్‌లోడింగ్ వివిధ పారామీటర్ రకాలతో సమానమైన పద్ధతులను నిర్వచించడానికి ఉపయోగిస్తారు.

పద్ధతి భర్తీ చేయడం అంటే ఏమిటి?

ఇది సబ్‌క్లాస్‌లో ఒక పద్ధతి యొక్క విభిన్న అమలును సూచిస్తుంది. మాతృ తరగతిలో ఈ పద్ధతి ఇప్పటికే నిర్వచించబడి ఉండాలి.

ఓవర్‌రైడింగ్ పద్ధతి (అనగా సబ్‌క్లాస్‌లో ఉన్నది) తప్పనిసరిగా సూపర్ క్లాస్‌లో ఉండే విధంగానే సంతకం చేయాలి. ఓవర్‌రైడింగ్ పద్ధతి యొక్క రిటర్న్ రకం సూపర్‌క్లాస్‌లో ఉండేది లేదా ఉప రకం కావచ్చు.

సబ్‌క్లాస్‌లో వస్తువు యొక్క ప్రవర్తన యొక్క నిర్దిష్ట అమలును చేర్చడానికి సాధారణంగా ఓవర్‌రైడింగ్ ఉపయోగించబడుతుంది.

class Account{
public void message() {
System.out.println('
Thank you for opening an account with us!');
}
public static void main(String args[]) {
Account myAccount = new Account();
Savings mySavings = new Savings();
FixedDeposit myFixedDepo = new FixedDeposit();
myAccount.message();
mySavings.message();
myFixedDepo.message();
}
}
class Savings extends Account {
public void message() {
System.out.println('
Thank you for opening a Savings account with us!');
}
}
class FixedDeposit extends Account {
public void message() {
System.out.println('
Thank you for opening a Fixed Deposit account with us!');
}
}

అవుట్‌పుట్:

Thank you for opening an account with us!
Thank you for opening a Savings account with us!
Thank you for opening a Fixed Deposit account with us!

పై ఉదాహరణ పద్ధతి ఎలా ఉందో చూపుతుంది సందేశం () ఉపవర్గాలలో అతిక్రమించబడింది పొదుపు మరియు స్థిర నిధి . సేవింగ్స్ అకౌంట్ ఉన్న బ్యాంక్ అకౌంట్ హోల్డర్స్ మరియు ఫిక్స్డ్ డిపాజిట్ అకౌంట్ ఉన్నవారికి వేర్వేరు మెసేజ్‌లు ప్రదర్శించబడతాయి.

సంబంధిత: జావాలో తీగలను ఉపయోగించడం గురించి మీరు తెలుసుకోవలసినది

మెథడ్ ఓవర్‌రైడింగ్ రన్‌టైమ్ పాలిమార్ఫిజం లేదా డైనమిక్ మెథడ్ డిస్పాచ్‌ను ప్రదర్శిస్తుందని కూడా గమనించాలి. దీని అర్థం పిలవబడే పద్ధతి కంపైలేషన్ వద్ద కాకుండా రన్‌టైమ్‌లో పరిష్కరించబడుతుంది.

ఒక పద్ధతి అతిక్రమించబడకుండా ఉండటానికి, కీవర్డ్‌ని ఉపయోగించండి చివరి .

final void message (){
System.out.println('
Thank you for opening an account with us!');
}

సబ్‌క్లాస్ దాన్ని అధిగమించడానికి ప్రయత్నించినప్పుడు, సంకలనం లోపం ఏర్పడుతుంది.

ఆదర్శవంతంగా, కన్స్ట్రక్టర్ లోపల పిలవబడే అన్ని పద్ధతులు ఉండాలి చివరి . ఉపవర్గాల వల్ల కలిగే ఏవైనా అనుకోని మార్పులను నివారించడానికి ఇది.

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

సూపర్ క్లాస్‌ని పరిగణించండి జంతు .

class Animal{
public void move() {
System.out.println('
I can move.');
}
}

క్రింద ఒక సబ్‌క్లాస్ ఉంది చేప , అది అధిగమిస్తుంది కదలిక() :

class Fish extends Animal {
public void move() {
System.out.println('
I can swim.');
super.move();
}
public static void main(String args[]){
Fish Tilapia = new Fish();
Tilapia.move();
}
}

అవుట్‌పుట్:

సంతానోత్పత్తికి బ్రష్‌లను ఎలా దిగుమతి చేయాలి
I can swim.
I can move.

ఒక పద్ధతిని భర్తీ చేసేటప్పుడు, ఉపయోగించిన యాక్సెస్ మాడిఫైయర్ గురించి కూడా మీరు జాగ్రత్త వహించాలి. సబ్‌క్లాస్‌లోని మాడిఫైయర్ ఒకే స్థాయి దృశ్యమానతను కలిగి ఉండాలి లేదా బేస్ క్లాస్ కంటే ఎక్కువగా ఉండాలి. ఉదాహరణకు, బేస్ క్లాస్‌లోని పద్ధతి ఇలా నిర్వచించబడితే రక్షించబడింది , అప్పుడు ఓవర్‌రైడింగ్ పద్ధతి కావచ్చు రక్షించబడింది లేదా ప్రజా .

పాలిమార్ఫిజంతో సాధారణ కోడ్

కోడ్ సరళీకరణకు మెథడ్ ఓవర్‌రైడింగ్ మరియు ఓవర్‌లోడింగ్ ముఖ్యం, మరియు సింపుల్ కోడ్ మంచి అభ్యాసం.

ఎందుకు? గ్రాండ్ సెంట్రల్ స్టేషన్ కంటే ఎక్కువ ఇన్‌లు మరియు అవుట్‌లతో కూడిన క్లిష్టమైన కోడ్‌బేస్‌ను ఊహించండి. వినాశకరమైన బగ్ మీ కళ్ళ ముందు మీ కష్టాన్ని నాశనం చేయడం ప్రారంభిస్తుందని ఇప్పుడు ఊహించండి. మీరు సంక్రమణ మూలాన్ని వేరుచేయాలి మరియు మీరు త్వరగా చేయవలసి ఉంటుంది.

అదృష్టం, మీరు మీ కోడ్‌ను సరళీకృతం చేయలేదు ... ఇప్పుడు మీరు క్రిప్టోగ్రఫీలో నిజమైన పాఠాన్ని నేర్చుకోబోతున్నారు. సమర్థవంతమైన డేటా స్ట్రక్చర్‌లను ఉపయోగించడం మరియు కోడ్‌ను తగ్గించడానికి మీరు చేయగలిగినది చేయడం (DRY ని మనస్సులో ఉంచుకోవడం వంటివి) ఇలాంటి పరిస్థితికి వ్యతిరేకంగా మీ ఉత్తమ రక్షణ.

మీ జావా లెర్నింగ్ జాబితాలో తదుపరి శ్రేణులు పని చేయాలి. అవి డేటా పాయింట్ల బ్యాచ్‌లను నిల్వ చేయడానికి ఉపయోగించే ముఖ్యమైన డేటా నిర్మాణాలు.

షేర్ చేయండి షేర్ చేయండి ట్వీట్ ఇమెయిల్ జావాలో శ్రేణులపై ఆపరేషన్‌లను ఎలా సృష్టించాలి మరియు నిర్వహించాలి

జావా నేర్చుకుంటున్నారా? శ్రేణులు మీ డేటాను సులభంగా నిర్వహించడానికి అనుమతించండి.

తదుపరి చదవండి
సంబంధిత అంశాలు
  • ప్రోగ్రామింగ్
  • జావా
  • కోడింగ్ ట్యుటోరియల్స్
రచయిత గురుంచి జెరోమ్ డేవిడ్సన్(22 కథనాలు ప్రచురించబడ్డాయి)

జెరోమ్ MakeUseOf లో స్టాఫ్ రైటర్. అతను ప్రోగ్రామింగ్ మరియు లైనక్స్ గురించి కథనాలను కవర్ చేస్తాడు. అతను క్రిప్టో iత్సాహికుడు మరియు క్రిప్టో పరిశ్రమపై ఎల్లప్పుడూ ట్యాబ్‌లను ఉంచుతాడు.

జెరోమ్ డేవిడ్సన్ నుండి మరిన్ని

మా వార్తాలేఖకు సభ్యత్వాన్ని పొందండి

టెక్ చిట్కాలు, సమీక్షలు, ఉచిత ఈబుక్‌లు మరియు ప్రత్యేకమైన డీల్స్ కోసం మా వార్తాలేఖలో చేరండి!

సభ్యత్వం పొందడానికి ఇక్కడ క్లిక్ చేయండి