జావా కన్స్ట్రక్టర్ ట్యుటోరియల్

Java Constructor Tutorial



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

కన్స్ట్రక్టర్ యొక్క లక్షణాలు

  1. కన్స్ట్రక్టర్ పేరు తప్పనిసరిగా క్లాస్ పేరు వలె ఉండాలి.
  2. తిరిగి ఇచ్చే రకం చెల్లదు.
  3. కన్స్ట్రక్టర్ స్థిరంగా, నైరూప్యంగా మరియు అంతిమంగా ఉండకూడదు.

కన్స్ట్రక్టర్ రకాలు







  1. డిఫాల్ట్
  2. పరామితి-తక్కువ
  3. పారామీటర్ చేయబడింది

1. డిఫాల్ట్ కన్స్ట్రక్టర్

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



2. పరామితి లేని కన్స్ట్రక్టర్

ఏ పరామితి లేదా ఆర్గ్యుమెంట్ లేకుండా ఒక కన్స్ట్రక్టర్ ప్రకటించబడినప్పుడు, దానిని పరామితి లేని కన్స్ట్రక్టర్ అంటారు. పారామీటర్-తక్కువ కన్స్ట్రక్టర్ డిఫాల్ట్ కన్స్ట్రక్టర్ లాగా పనిచేస్తుంది మరియు ఈ కన్స్ట్రక్టర్ స్టేట్మెంట్లను కలిగి ఉండవచ్చు లేదా అది ఖాళీగా ఉండవచ్చు.



3. పారామీటరైజ్డ్ కన్స్ట్రక్టర్

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





ఉదాహరణ 1: పరామితి-తక్కువ కన్స్ట్రక్టర్‌ని సృష్టించడం

కింది కోడ్ పారామీటర్ లేని కన్స్ట్రక్టర్‌ను ఎలా ఉపయోగించాలో చూపుతుంది. కన్స్ట్రక్టర్ పద్ధతి పేరు తరగతి పేరు వలెనే ఉంటుందని ఇది ముందు పేర్కొనబడింది. ఇక్కడ, తరగతి పేరు ' con1 , 'కాబట్టి పరామితి లేని కన్స్ట్రక్టర్ పేరు' con1 () . 'రెండు తరగతి వేరియబుల్స్,' పేరు 'మరియు' వయస్సు , ’ఇక్కడ ప్రకటించబడ్డాయి. ఆబ్జెక్ట్ వేరియబుల్ ప్రకటించే సమయంలో ' ఆబ్జెక్ట్ , 'కన్స్ట్రక్టర్‌ను పిలుస్తారు మరియు ఒక నిర్దిష్ట సందేశం ముద్రించబడుతుంది. ఆ తరువాత, తరగతి వేరియబుల్స్‌లో రెండు విలువలు కేటాయించబడతాయి మరియు తరువాత వాటిని ఉపయోగించి ముద్రించబడతాయి 'Obj' వస్తువు

ప్రజా తరగతిcon1{

// వేరియబుల్స్ ప్రకటించండి
స్ట్రింగ్ పేరు;
intవయస్సు;

// పరామితి లేని కన్స్ట్రక్టర్
con1() {
వ్యవస్థ .బయటకు.println('కన్స్ట్రక్టర్ అంటారు.');

// వేరియబుల్స్ ప్రారంభించండి
పేరు= 'ఫాహిమ్ రెజా';
వయస్సు= 30;
}

// ప్రధాన () పద్ధతి
ప్రజా స్టాటిక్ శూన్యంప్రధాన( స్ట్రింగ్ []వాదిస్తుంది) {

// ఒక వస్తువును సృష్టించండి
con1 ఆబ్జెక్ట్= కొత్తcon1();

// వస్తువు లక్షణాల విలువలను ముద్రించండి
వ్యవస్థ .బయటకు.ముద్రణ('యుగం' +ఆబ్జెక్ట్పేరు + 'ఉంది' +ఆబ్జెక్ట్వయస్సు);
}
}

అవుట్‌పుట్:



కింది చిత్రం కోడ్ యొక్క అవుట్‌పుట్‌ను చూపుతుంది. ఆబ్జెక్ట్ క్రియేషన్ మరియు మెసేజ్ సమయంలో కన్స్ట్రక్టర్ అంటారు కన్స్ట్రక్టర్ అంటారు ముద్రించబడింది. విలువలు ' పేరు 'మరియు' వయస్సు కన్స్ట్రక్టర్ లోపల కేటాయించబడతాయి. ఈ వేరియబుల్స్ విలువలు తర్వాత ముద్రించబడతాయి.

ఉదాహరణ 2: పారామీటరైజ్డ్ కన్స్ట్రక్టర్‌ను సృష్టించండి

కింది కోడ్ ప్రాథమిక జీతం ఆధారంగా ఉద్యోగి యొక్క మొత్తం జీతాన్ని లెక్కిస్తుంది మరియు లెక్కించిన జీతంతో పాటు ఆ ఉద్యోగి యొక్క ఇతర సమాచారాన్ని ప్రింట్ చేస్తుంది. ఇక్కడ, ఏడు తరగతి వేరియబుల్స్ ప్రకటించబడ్డాయి. కన్స్ట్రక్టర్, పేరు పెట్టబడింది con2 () , ’మూడు పారామితులను కలిగి ఉంది. మొదటి రెండు పారామితులు 'లోని స్ట్రింగ్ విలువలను తీసుకుంటాయి పేరు 'మరియు' పోస్ట్ 'పారామితులు, మరియు మూడవ పరామితి' లోని సంఖ్యా విలువను తీసుకుంటుంది ప్రాథమిక 'పరామితి. ఈ పారామితుల విలువలు ఆబ్జెక్ట్ క్రియేషన్ సమయంలో పాస్ చేయబడతాయి. కన్స్ట్రక్టర్ ఈ విలువలతో క్లాస్ వేరియబుల్స్ ప్రారంభిస్తారు మరియు 'విలువ ఆధారంగా ఇతర విలువలను లెక్కిస్తారు. ప్రాథమిక 'పరామితి. తరువాత, ఉద్యోగి పేరు, పోస్ట్ మరియు జీతం ముద్రించబడతాయి.

ప్రజా తరగతిcon2{

// వేరియబుల్స్ ప్రకటించండి
స్ట్రింగ్ పేరు;
స్ట్రింగ్ పోస్ట్;
intప్రాథమిక;
రెట్టింపుఇంటి అద్దె;
రెట్టింపువైద్య;
రెట్టింపురవాణా;
రెట్టింపుజీతం;

// పారామీటరైజ్డ్ కన్స్ట్రక్టర్
con2( స్ట్రింగ్ పేరు, స్ట్రింగ్ పోస్ట్,intప్రాథమిక) {
.పేరు =పేరు;
.పోస్ట్ =పోస్ట్;
.ప్రాథమిక =ప్రాథమిక;
.ఇంటి అద్దె =ప్రాథమిక*0.3;
.వైద్య =ప్రాథమిక*0.2;
.రవాణా =ప్రాథమిక*0.1;
జీతం=ప్రాథమిక+ఇంటి అద్దె+వైద్య+రవాణా;
}

// ప్రధాన () పద్ధతి
ప్రజా స్టాటిక్ శూన్యంప్రధాన( స్ట్రింగ్ []వాదిస్తుంది) {

// ఒక వస్తువును సృష్టించండి
con2 ఆబ్జెక్ట్= కొత్తcon2('మీర్ సబ్బీర్','అకౌంటెంట్',65000);

// వస్తువు లక్షణాల విలువలను ముద్రించండి
వ్యవస్థ .బయటకు.ముద్రణ('ఉద్యోగి పేరు: ' +ఆబ్జెక్ట్పేరు + ' n' + 'పోస్ట్:'+ఆబ్జెక్ట్పోస్ట్ +
' n' + 'జీతం: TK'+ఆబ్జెక్ట్జీతం);
}
}

అవుట్‌పుట్:

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

ఉదాహరణ 3: కన్స్ట్రక్టర్ చైనింగ్‌ను సృష్టించండి

కన్స్ట్రక్టర్ గొలుసు భావనను అర్థం చేసుకోవడానికి ఆబ్జెక్ట్-ఓరియెంటెడ్ ప్రోగ్రామింగ్ యొక్క వారసత్వ లక్షణం గురించి తెలుసుకోవడం ముఖ్యం. మరొక తరగతి వారసత్వంగా ఒక కొత్త తరగతి సృష్టించబడినప్పుడు, దానిని వారసత్వం అంటారు. ఈ సందర్భంలో, పేరెంట్ లేదా బేస్ క్లాస్ యొక్క అన్ని లక్షణాలు పిల్లల లేదా ఉత్పన్నమైన తరగతి నుండి అందుబాటులో ఉంటాయి. చైల్డ్ క్లాస్ యొక్క ఒక వస్తువు సృష్టించబడినప్పుడు, దాని స్వంత కన్స్ట్రక్టర్‌కు కాల్ చేయడానికి ముందు అది స్వయంచాలకంగా మాతృ తరగతి నిర్మాణదారుని పిలుస్తుంది. ది ' సూపర్ () మాతృ నిర్మాతను పిలవడానికి ఇతర భాషలలో ఈ పద్ధతి ఉపయోగించబడుతుంది, కానీ జావా కంపైలర్ ఈ పద్ధతిని స్వయంచాలకంగా పిలుస్తుంది. ఈ విధంగా కన్స్ట్రక్టర్లను ఉపయోగించడం కన్స్ట్రక్టర్ చైన్ అని పిలుస్తారు మరియు ఈ ప్రక్రియ ఈ ఉదాహరణలో చూపబడింది. ఇక్కడ, పేరెంట్ క్లాస్ పేరు ' పేరెంట్ 'మరియు పిల్లల తరగతి పేరు' con3 . ’అనే మరో పద్ధతి ఉంది కలపండి () పేరెంట్ మరియు చైల్డ్ కన్స్ట్రక్టర్‌లలో కేటాయించిన విలువలను కలిపే చైల్డ్ క్లాస్‌లో.

తరగతిపేరెంట్{

// వేరియబుల్ ప్రకటించండి
స్ట్రింగ్ strVal;

// పేరెంట్ కన్స్ట్రక్టర్
పేరెంట్(){
వ్యవస్థ .బయటకు.println('పేరెంట్ కన్స్ట్రక్టర్ అంటారు');
strVal= 'నాకు ఇష్టం ';
}
}

ప్రజా తరగతిcon3విస్తరిస్తుందిపేరెంట్{

// వేరియబుల్ ప్రకటించండి
స్ట్రింగ్ చైల్డ్స్టార్వాల్;

// చైల్డ్ కన్స్ట్రక్టర్
con3(){
వ్యవస్థ .బయటకు.println('చైల్డ్ కన్స్ట్రక్టర్ అంటారు');
చైల్డ్స్టార్వాల్=strVal+ 'జావా ప్రోగ్రామింగ్';
}

// తీగలను కలపడానికి మరొక పద్ధతి
స్ట్రింగ్ కలపండి()
{
తిరిగి .చైల్డ్స్టార్వాల్;
}

// ప్రధాన () పద్ధతి
ప్రజా స్టాటిక్ శూన్యంప్రధాన( స్ట్రింగ్ []వాదిస్తుంది) {

// ఒక వస్తువును సృష్టించండి
con3 ఆబ్జెక్ట్= కొత్తcon3();
// వస్తువు లక్షణాల విలువలను ముద్రించండి
వ్యవస్థ .బయటకు.ముద్రణ(ఆబ్జెక్ట్కలపండి());
}
}

అవుట్‌పుట్:

కింది చిత్రం కోడ్ యొక్క అవుట్‌పుట్‌ను చూపుతుంది. మొదటి సందేశం పేరెంట్ కన్స్ట్రక్టర్ నుండి ముద్రించబడుతుంది, రెండవ సందేశం చైల్డ్ కన్స్ట్రక్టర్ నుండి ముద్రించబడుతుంది. చివరి సందేశాన్ని ‘కాల్’ ద్వారా ముద్రించారు కలపండి () 'పద్ధతి.

ముగింపు

క్రొత్త వినియోగదారులు అనుసరించగల సులభమైన జావా కోడ్ ఉదాహరణలను ఉపయోగించడం ద్వారా ఈ ట్యుటోరియల్‌లో కన్స్ట్రక్టర్ భావన మరియు విభిన్న కన్స్ట్రక్టర్ల ఉపయోగాలు వివరించబడ్డాయి. ఆశాజనక, ఈ ఉదాహరణలు జావా కన్స్ట్రక్టర్ యొక్క ప్రాథమికాలను అర్థం చేసుకోవడానికి మీకు సహాయపడ్డాయి.