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

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

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





సాఫ్ట్‌వేర్ డెవలప్‌మెంట్‌లో వారసత్వం యొక్క ఉద్దేశ్యం సురక్షితమైన మరియు నమ్మదగిన సాఫ్ట్‌వేర్ యొక్క పునర్వినియోగాన్ని సులభతరం చేయడం. వారసత్వాన్ని ఉపయోగించడం యొక్క ప్రధాన ప్రయోజనాల్లో ఒకటి, ఇది మీ ప్రోగ్రామ్‌లలో రిడెండెంట్ కోడ్‌ను తొలగిస్తుంది.





ఈ అనుబంధానికి మద్దతు ఉండకపోవచ్చని నా ఫోన్ ఎందుకు చెబుతోంది

వారసత్వం ఎలా పనిచేస్తుంది

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





వారసత్వం ఎలా పనిచేస్తుందనే దానికి వాస్తవ ప్రపంచ ఉదాహరణ పండ్లను పరిగణనలోకి తీసుకోవడం. ఇది విస్తృతమైన లేబుల్, ఇది విభిన్న అంశాల శ్రేణిని కలుపుతుంది.

ఒక ఆపిల్ ఒక పండు మరియు ఒక నారింజ కూడా. అయితే, ఒక నారింజ పండు ఆపిల్ కాదు, కాబట్టి మీరు స్టోర్ కలిగి ఉంటే మీ స్టాక్ వస్తువులలో ఒకటిగా మీకు పండ్లు ఉండవు. బహుశా మీరు మీ జాబితాలో పండ్ల విభాగాన్ని కలిగి ఉండవచ్చు మరియు ఆ విభాగం కింద, మీరు ఆపిల్ మరియు నారింజ వంటి నిర్దిష్ట అంశాలను కలిగి ఉంటారు.



వారసత్వం ఎలా పనిచేస్తుంది.

జావాలో వారసత్వాన్ని ఉపయోగించడం

ఆబ్జెక్ట్-ఓరియెంటెడ్ ప్రోగ్రామింగ్ నమూనాను ఉపయోగించే ఏదైనా ప్రోగ్రామింగ్ భాషలో వారసత్వాన్ని ఉపయోగించవచ్చు. ఏదేమైనా, వారసత్వం ఉపయోగించబడే ఖచ్చితమైన మార్గం నిర్దిష్ట ప్రోగ్రామింగ్ భాషపై ఆధారపడి ఉంటుంది.





ఉదాహరణకి, C ++ కూడా ఆబ్జెక్ట్ ఓరియెంటెడ్ ప్రోగ్రామింగ్ లాంగ్వేజ్ . C ++ బహుళ వారసత్వం అని పిలవబడే వాటికి మద్దతు ఇస్తుంది, అయితే జావా ఒకే వారసత్వానికి మాత్రమే మద్దతు ఇస్తుంది.

దీని అర్థం ఏమిటంటే, జావాలో ఒక పేరెంట్ క్లాస్ అనేక చైల్డ్ క్లాసులను కలిగి ఉంటుంది, కానీ ప్రతి చైల్డ్ క్లాస్ ఒకే పేరెంట్ క్లాస్ (సింగిల్ వారసత్వం) మాత్రమే కలిగి ఉంటుంది. ఏదేమైనా, తాత, తల్లిదండ్రులు మరియు పిల్లల సంబంధాన్ని సృష్టించడం ద్వారా జావాలో పరోక్ష బహుళ వారసత్వాన్ని సాధించడానికి ఒక మార్గం ఉంది.





జావాలో పేరెంట్ క్లాస్ సృష్టిస్తోంది

సాఫ్ట్‌వేర్ అవసరాల డాక్యుమెంట్ నుండి పేరెంట్ క్లాస్‌ను ఎంచుకునే ప్రక్రియను ఆబ్జెక్ట్-ఓరియెంటెడ్ అనాలిసిస్ అంటారు. ఈ ప్రక్రియలో సాధ్యమయ్యే వారసత్వ సంబంధాలను గుర్తించడానికి ఈ పదబంధాన్ని తరచుగా ఉపయోగిస్తారు. పైన మా ఉదాహరణ నుండి గీయడం వలన పండు మా మాతృ తరగతి అని మీరు చూడగలరు.

ఫ్రూట్ పేరెంట్ క్లాస్ ఉదాహరణ


public class Fruit {
//Variable Declaration
protected String seed;
protected String skinColor;
protected String taste;
//Default Constructor
public Fruit(){
seed = '';
skinColor ='';
taste ='';
}
//Primary Constructor
public Fruit(String seed, String skinColor, String taste){
this.seed = seed;
this.skinColor = skinColor;
this.taste = taste;
}
//getters and setters
public String getSeed() {
return seed;
}
public void setSeed(String seed) {
this.seed = seed;
}
public String getSkinColor() {
return skinColor;
}
public void setSkinColor(String skinColor) {
this.skinColor = skinColor;
}
public String getTaste() {
return taste;
}
public void setTaste(String taste) {
this.taste = taste;
}
//eat method
public void eat(){
//general code on how to eat a fruit
}
//juice method
public void juice() {
//general code on how to juice a fruit
}
}

ప్రతి పేరెంట్ డిక్లరేషన్‌తో ఉపయోగించబడే యాక్సెస్ మాడిఫైయర్ పై పేరెంట్ క్లాస్ యొక్క అత్యంత ముఖ్యమైన అంశాలలో ఒకటి. రక్షిత యాక్సెస్ మాడిఫైయర్ పేరెంట్ క్లాస్‌లలో ఉపయోగించడానికి అనువైనది, ఎందుకంటే ఇది పేరెంట్ క్లాస్ డేటా లక్షణాలకు యాక్సెస్ పొందకుండా బాలేతర తరగతులను నిరోధిస్తుంది.

ఏదైనా జావా క్లాస్ కోసం సాధారణ బిల్డింగ్ బ్లాక్స్ అయిన కన్స్ట్రక్టర్లు, గెట్టర్‌లు మరియు సెట్టర్‌ల గురించి కోడ్‌లో మీకు మరింత పరిచయం చేయబడింది. చివరగా, మా ప్రోగ్రామ్ యొక్క పేరెంట్ క్లాస్‌లో సృష్టించబడిన రెండు పద్ధతులు (జ్యూస్ అండ్ ఈట్) మీకు పరిచయం చేయబడ్డాయి ఎందుకంటే అవి అన్ని పండ్లకు సార్వత్రికమైనవి -అన్ని పండ్లను తినవచ్చు మరియు జ్యూస్ చేయవచ్చు.

జావాలో పిల్లల తరగతులను సృష్టించడం

పిల్లల తరగతులను సాధారణంగా ప్రత్యేక లేదా ఉత్పన్నమైన తరగతులు అని పిలుస్తారు ఎందుకంటే వారు తల్లిదండ్రుల నుండి స్థితి మరియు ప్రవర్తనను వారసత్వంగా పొందుతారు మరియు తరచుగా ఈ లక్షణాలను మరింత నిర్దిష్టంగా అనుకూలీకరిస్తారు.

మా ఉదాహరణతో కొనసాగిస్తూ, పైన ఉన్న పండ్ల తరగతికి నారింజ ఎందుకు తగిన చైల్డ్ క్లాస్ అని మీరు చూడగలరు.

ఆరెంజ్ చైల్డ్ క్లాస్ ఉదాహరణ


public class Orange extends Fruit{
//variable declaration
private int supremes;
//default constructor
public Orange() {
supremes = 0;
}
//primary constructor
public Orange(String seed, String skinColor, String taste, int supremes){
super(seed, skinColor, taste);
this.supremes = supremes;
}
//getters and setters
public int getsupremes() {
return supremes;
}
public void setsupremes(int supremes) {
this.supremes = supremes;
}
//eat method
public void eat(){
//how to eat an orange
}
//juice method
public void juice() {
//how to juice and orange
}
//peel method
public void peel(){
//how to peel an orange
}
}

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

పైన మా ఉదాహరణలో చైల్డ్ క్లాస్ (ఆరెంజ్) పేరెంట్ క్లాస్ (పండు) ని విస్తరించింది. అందువల్ల, పండ్ల తరగతి యొక్క స్థితి మరియు ప్రవర్తనను ఇప్పుడు నారింజ తరగతి ద్వారా యాక్సెస్ చేయవచ్చు మరియు సవరించవచ్చు.

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

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

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

పాత్ర నిర్మాతలు వారసత్వంగా ఆడతారు

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

మా ఉదాహరణకి వెళితే, ప్రతిసారి కొత్త నారింజ వస్తువు సృష్టించబడినప్పుడు పండ్ల వస్తువు కూడా సృష్టించబడుతుంది ఎందుకంటే నారింజ పండు.

తెరవెనుక, చైల్డ్ క్లాస్ ఆబ్జెక్ట్ సృష్టించబడినప్పుడు, పేరెంట్ క్లాస్ యొక్క కన్స్ట్రక్టర్‌ను మొదట చైల్డ్ క్లాస్ కన్స్ట్రక్టర్ అంటారు. పైన ఉన్న మా ఆరెంజ్ చైల్డ్ క్లాస్‌లో, ఏ పరామితులు లేకుండా ఒక ఆరెంజ్ వస్తువు సృష్టించబడితే, మా డిఫాల్ట్ ఫ్రూట్ క్లాస్ కన్‌స్ట్రక్టర్ అని పిలవబడుతుంది, తర్వాత మా డిఫాల్ట్ ఆరెంజ్ క్లాస్ కాంట్రాక్టర్.

పైన పేర్కొన్న మా ప్రాథమిక కన్స్ట్రక్టర్‌లోని సూపర్ మెథడ్ అవసరం ఎందుకంటే ఇది పారామీటర్‌లతో ఒక ఆరెంజ్ వస్తువు సృష్టించబడినప్పుడల్లా మాతృ ఫ్రూట్ క్లాస్ యొక్క ప్రాథమిక కన్స్ట్రక్టర్ -డిఫాల్ట్ కన్స్ట్రక్టర్ అని పిలవబడాలని నిర్దేశిస్తుంది.

ఇప్పుడు మీరు జావాలో వారసత్వాన్ని ఉపయోగించవచ్చు

ఈ ఆర్టికల్ నుండి, వారసత్వం అంటే ఏమిటి, అది ఎలా పనిచేస్తుంది మరియు ప్రోగ్రామింగ్‌లో ఇది ఎందుకు అంత ముఖ్యమైన భావన అని మీరు తెలుసుకోగలిగారు. మీరు ఇప్పుడు జావా ప్రోగ్రామింగ్ భాషను ఉపయోగించి మీ వారసత్వ సంబంధాలను సృష్టించవచ్చు. ఇంకా, తాత సంబంధాన్ని సృష్టించడం ద్వారా జావా యొక్క ఒకే వారసత్వ పాలనను ఎలా పొందాలో మీకు ఇప్పుడు తెలుసు.

ఇమేజ్ క్రెడిట్: ఆండ్రియాస్ వోల్ఫహర్ట్ / పెక్సెల్స్

షేర్ చేయండి షేర్ చేయండి ట్వీట్ ఇమెయిల్ వారసత్వంతో మీ ఆబ్జెక్ట్-ఓరియంటెడ్ కోడ్‌ను ఎలా నిర్వహించాలి

ఆబ్జెక్ట్ ఓరియెంటెడ్ ప్రోగ్రామింగ్ సరిగ్గా పొందడం అంటే మీరు వారసత్వం గురించి తెలుసుకోవాలి మరియు అది కోడింగ్‌ను సరళీకృతం చేయడం మరియు లోపాలను ఎలా తగ్గించగలదు.

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

కదీషా కీన్ పూర్తి-స్టాక్ సాఫ్ట్‌వేర్ డెవలపర్ మరియు టెక్నికల్/టెక్నాలజీ రైటర్. ఆమె చాలా క్లిష్టమైన సాంకేతిక భావనలను సరళీకృతం చేసే ప్రత్యేక సామర్థ్యాన్ని కలిగి ఉంది; ఏదైనా సాంకేతిక అనుభవం లేని వ్యక్తి సులభంగా అర్థం చేసుకోగల పదార్థాన్ని ఉత్పత్తి చేయడం. ఆమె రాయడం, ఆసక్తికరమైన సాఫ్ట్‌వేర్‌ను అభివృద్ధి చేయడం మరియు ప్రపంచాన్ని పర్యటించడం (డాక్యుమెంటరీల ద్వారా) పట్ల మక్కువ చూపుతుంది.

కదీషా కీన్ నుండి మరిన్ని

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

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

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