వియుక్త తరగతులు మరియు ఇంటర్ఫేస్లు రెండు ప్రధాన బిల్డింగ్ బ్లాక్లుయొక్క . రెండూ ప్రధానంగా సంగ్రహణ కోసం ఉపయోగించబడుతున్నప్పటికీ, అవి ఒకదానికొకటి చాలా భిన్నంగా ఉంటాయి మరియు పరస్పరం మార్చుకోలేవు. ఈ వ్యాసంలో జావాలో నైరూప్య తరగతి మరియు ఇంటర్ఫేస్ మధ్య తేడా ఏమిటో తెలుసుకుందాం.
ఈ వ్యాసంలో చర్చించిన అంశాలు ఈ క్రింది విధంగా ఉన్నాయి:
- జావాలో వియుక్త తరగతి అంటే ఏమిటి?
- జావాలో ఇంటర్ఫేస్
- వియుక్త తరగతి vs ఇంటర్ఫేస్
- ఎప్పుడు అబ్స్ట్రాక్ట్ క్లాస్ ఉపయోగించాలి & ఎప్పుడు ఇంటర్ఫేస్ వాడాలి?
లో నైరూప్య తరగతి మరియు ఇంటర్ఫేస్ మధ్య తేడాలను అర్థం చేసుకోవడానికి , ఒక నైరూప్య తరగతి అంటే ఏమిటి మరియు ఇంటర్ఫేస్ అంటే ఏమిటో మీరు తెలుసుకోవాలి. కాబట్టి, అవి ఏమిటో చర్చించడం ద్వారా ప్రారంభిద్దాం.
జావాలో వియుక్త తరగతి అంటే ఏమిటి?
ఏదైనా ప్రోగ్రామింగ్ భాషలో, సంగ్రహణ అంటే సామర్థ్యాన్ని పెంచడానికి అవసరమైన వివరాలపై మాత్రమే దృష్టి పెట్టడానికి వినియోగదారు నుండి అసంబద్ధమైన వివరాలను దాచడం, తద్వారా సంక్లిష్టతను తగ్గిస్తుంది. జావాలో, సంగ్రహణ ఉపయోగించి సాధించవచ్చు నైరూప్య తరగతులు . ఒక నైరూప్య తరగతి ఉపవర్గాల యొక్క సాధారణ లక్షణాలను సంగ్రహిస్తుంది మరియు ఏదైనా నైరూప్య పద్ధతిని కలిగి ఉండవచ్చు లేదా కలిగి ఉండకపోవచ్చు. దీన్ని తక్షణం చేయలేము కాని దాని ఉపవర్గాల ద్వారా మాత్రమే సూపర్ క్లాస్గా ఉపయోగించవచ్చు. నైరూప్య తరగతిని ప్రదర్శించే ఉదాహరణ ప్రోగ్రామ్ ఇక్కడ ఉంది:
గమనిక: ఒక నైరూప్య పద్ధతి , ఇది స్థానంలో అమలు చేయని మరియు జతచేసే పద్ధతికు అసంపూర్ణత తరగతి .
ప్యాకేజీ MyPackage // నైరూప్య తరగతి నైరూప్య తరగతి జంతువు {స్ట్రింగ్ యానిమల్నేమ్ = '' జంతువు (స్ట్రింగ్ పేరు) {this.AnimalName = name} // నైరూప్య పద్ధతులను ప్రకటించండి // దీనికి డిఫాల్ట్ అమలు పబ్లిక్ శూన్యత బేసిక్ఇన్ఫో (స్ట్రింగ్ వివరాలు) {సిస్టమ్. out.println (this.AnimalName + '' + details)} // దాని ఉపవర్గం (ఎస్) వియుక్త పబ్లిక్ శూన్య నివాసం () వియుక్త పబ్లిక్ శూన్య శ్వాసక్రియ ()} క్లాస్ టెరెస్ట్రియల్ జంతువును విస్తరిస్తుంది {// కన్స్ట్రక్టర్ టెరెస్ట్రియల్ (స్ట్రింగ్ పేరు) {సూపర్ (పేరు) public public పబ్లిక్ శూన్య ఆవాసాలను ఓవర్రైడ్ చేయండి () {System.out.println ('భూమిపై వదిలివేయండి మరియు') public public పబ్లిక్ శూన్య శ్వాసక్రియను ఓవర్రైడ్ చేయండి () {System.out.println ('శ్వాసక్రియ lung పిరితిత్తులు లేదా శ్వాసనాళాల ద్వారా. ')}} క్లాస్ ఆక్వాటిక్ జంతువులను విస్తరిస్తుంది {// కన్స్ట్రక్టర్ ఆక్వాటిక్ (స్ట్రింగ్ పేరు) {సూపర్ (పేరు) public public పబ్లిక్ శూన్య నివాసాలను ఓవర్రైడ్ చేయండి () {System.out.println (' ఇది నీటిలో మరియు ') Public public ఓవర్రైడ్ పబ్లిక్ శూన్య శ్వాసక్రియ () {System.out.println ('మొప్పలు లేదా వాటి చర్మం ద్వారా శ్వాస తీసుకోండి.')}} క్లాస్ అబ్స్ట్రాక్ట్ క్లాస్డెమో {పబ్లిక్ స్టాటిక్ వోయి d main (స్ట్రింగ్ [] అర్గ్స్) {// ఆబ్జెక్ట్ ఆఫ్ టెరెస్ట్రియల్ క్లాస్ // ను సృష్టించడం మరియు యానిమల్ క్లాస్ రిఫరెన్స్ ఉపయోగించి. యానిమల్ ఆబ్జెక్ట్ 1 = కొత్త టెరెస్ట్రియల్ ('హ్యూమన్స్') ఆబ్జెక్ట్ 1. బేసిక్ఇన్ఫో ('భూగోళ జీవులు, అవి') ఆబ్జెక్ట్ 1.హాబిటాట్ () ఆబ్జెక్ట్ 1.ప్రయోగం () సిస్టమ్.అవుట్.ప్రింట్ల్న్ ('') // సర్కిల్ క్లాస్ యానిమల్ ఆబ్జెక్ట్ 2 = కొత్త ఆక్వాటిక్ ('ఫిషెస్') ఆబ్జెక్ట్ 2. బేసిక్ఇన్ఫో ('ఆక్వాటిక్ జీవులు, అవి') ఆబ్జెక్ట్ 2.హాబిటాట్ () ఆబ్జెక్ట్ 2.రెస్పిరేషన్ ()}}
అవుట్పుట్
మానవులు భూగోళ జీవులు, వారు భూమిని వదిలి lung పిరితిత్తులు లేదా శ్వాసనాళాల ద్వారా శ్వాస తీసుకుంటారు. చేపలు ఆక్వాటిక్ జీవులు, అవి నీటిలో వదిలి మొప్పలు లేదా వాటి చర్మం ద్వారా శ్వాస తీసుకుంటాయి.
ది ప్రాథమిక సమాచారం () భాగస్వామ్యం చేసిన పద్ధతి భూగోళ మరియు జల తరగతులు. నుండి జంతు తరగతి ప్రారంభించలేము, మేము వస్తువులను సృష్టిస్తున్నాము భూగోళ మరియు జల ప్రోగ్రామింగ్ ప్రయోజనం కోసం తరగతులు. తరువాత, మాకు ఇంటర్ఫేస్లు ఉన్నాయి.
జావాలో ఇంటర్ఫేస్
సాధించడానికి మరొక మార్గం సంగ్రహణ జావాలో ఉపయోగించడం ద్వారా ఇంటర్ఫేస్లు .ఇంటర్ఫేస్ అనేది నైరూప్య పద్ధతుల సమాహారం, దీనికి కాంక్రీటు లేదు , ఒక నైరూప్య తరగతి వలె కాకుండా. కానీ నైరూప్య తరగతి వలె కాకుండా, ఇంటర్ఫేస్ జావాలో పూర్తి సంగ్రహణను అందిస్తుంది. ఇది తరగతి వలె పద్ధతులు మరియు వేరియబుల్స్ రెండింటినీ కలిగి ఉంటుంది. అయినప్పటికీ, ఇంటర్ఫేస్లో ప్రకటించిన పద్ధతులు అప్రమేయంగా వియుక్తంగా ఉంటాయి.ఇక్కడ ఒక నైరూప్య తరగతిని ప్రదర్శిస్తోంది:
ప్యాకేజీ మైప్యాకేజ్ ఇంటర్ఫేస్ జంతువులు {// నైరూప్య పద్ధతులు శూన్యమైన ఆవాసాలు () శూన్యమైన శ్వాసక్రియ ()} క్లాస్ టెరెస్ట్రియల్ ఏ జంతువులను అమలు చేస్తుంది {స్ట్రింగ్ యానిమల్నేమ్ = '' // కన్స్ట్రక్టర్ టెరెస్ట్రియల్ ఎ (స్ట్రింగ్ పేరు) . System.out.println (this.AnimalName + 'భూమిపై వదిలివేయండి మరియు') public public పబ్లిక్ శూన్య శ్వాసక్రియను అధిగమించండి () {System.out.println ('lung పిరితిత్తులు లేదా శ్వాసనాళాల ద్వారా శ్వాస తీసుకోండి.')}} క్లాస్ అక్వాటిక్ఏ జంతువులను అమలు చేస్తుంది {స్ట్రింగ్ యానిమల్నేమ్ = '' // కన్స్ట్రక్టర్ అక్వాటిక్ఏ (స్ట్రింగ్ పేరు) {this.AnimalName = name public public పబ్లిక్ శూన్య ఆవాసాలను ఓవర్రైడ్ చేయండి () {System.out.println (this.AnimalName + 'నీటిలో వదిలివేయండి మరియు') public public పబ్లిక్ శూన్య శ్వాసక్రియను అధిగమించండి () {System.out.println ('మొప్పలు లేదా వాటి చర్మం ద్వారా శ్వాస తీసుకోండి.')}} తరగతి జావా ఇంటర్ఫేస్ డెమో {పబ్లిక్ స్టాటిక్ వాయిడ్ మెయిన్ (స్ట్రింగ్ [] అర్గ్స్) {// టెరెస్ట్రియల్ క్లాస్ యొక్క ఆబ్జెక్ట్ని సృష్టించడం మరియు యానిమల్ క్లాస్ రిఫరెన్స్ ఉపయోగించి . జంతువులు ఆబ్జెక్ట్ 1 = కొత్త టెరెస్ట్రియల్ ఎ ('హ్యూమన్స్') ఆబ్జెక్ట్ 1.హాబిటాట్ () ఆబ్జెక్ట్ 1.ప్రయోగం () సిస్టం.అవుట్.ప్రింట్ల్న్ ('') // సర్కిల్ క్లాస్ జంతువుల వస్తువులను సృష్టించడం () object2.respiration ()}}
అవుట్పుట్
మానవులు భూమిపైకి వెళ్లి lung పిరితిత్తులు లేదా శ్వాసనాళాల ద్వారా శ్వాస తీసుకుంటారు. చేపలు నీటిలో వదిలి మొప్పలు లేదా వాటి చర్మం ద్వారా శ్వాస తీసుకుంటాయి.
మీ మధ్య మీకు సాధారణ కోడ్ లేకపోతే తరగతులు , అప్పుడు మీరు ఇంటర్ఫేస్ కోసం వెళ్ళవచ్చు. ఇంటర్ఫేస్ తరగతి యొక్క బ్లూప్రింట్ లాగా ఉంటుంది, ఎందుకంటే దీనికి నైరూప్య పద్ధతులు లేవు.
పై కంటెంట్ నుండి, మీరు నైరూప్య తరగతి మరియు ఇంటర్ఫేస్ మధ్య కీలక వ్యత్యాసాన్ని గమనించి ఉండవచ్చు . ఇది, నైరూప్య తరగతి వలె కాకుండా, ఇంటర్ఫేస్ పూర్తిస్థాయిలో అందిస్తుంది సంగ్రహణ జావాలో. ఇప్పుడు ముందుకు వెళ్లి ఇతర తేడాలను జాబితా చేద్దాం.
జావాలో నిమిషం కుప్పను అమలు చేయండి
వియుక్త తరగతి vs ఇంటర్ఫేస్
దిగువ పట్టిక వియుక్త తరగతి మరియు ఇంటర్ఫేస్ మధ్య ఉన్న ముఖ్యమైన తేడాలను జాబితా చేస్తుంది.
పరామితి | వియుక్త తరగతి | ఇంటర్ఫేస్ |
డిఫాల్ట్ విధానం అమలు | ఇది డిఫాల్ట్ పద్ధతి అమలును కలిగి ఉంటుంది | ఇంటర్ఫేస్లు స్వచ్ఛమైన సంగ్రహణను అందిస్తాయి మరియు అమలును కలిగి ఉండవు |
వేరియబుల్స్ | ఇది నాన్-ఫైనల్ వేరియబుల్స్ కలిగి ఉండవచ్చు. | ఇంటర్ఫేస్లో ప్రకటించిన వేరియబుల్స్ అప్రమేయంగా ఫైనల్ |
కీవర్డ్ ఉపయోగించబడింది | “విస్తరిస్తుంది” అనే కీవర్డ్ని ఉపయోగించి ఒక నైరూప్య తరగతిని విస్తరించవచ్చు | కీవర్డ్ ïmplements ఉపయోగించి ఇంటర్ఫేస్ అమలు చేయాలి |
యాక్సెస్ మాడిఫైయర్లు | కెన్పబ్లిక్, రక్షిత, ప్రైవేట్ మరియు డిఫాల్ట్ మాడిఫైయర్ కలిగి | ఇంటర్ఫేస్ పద్ధతులు అప్రమేయంగా పబ్లిక్. మీరు దానితో ఇతర యాక్సెస్ మాడిఫైయర్ను ఉపయోగించలేరు |
అమలు వేగం | ఇది ఇంటర్ఫేస్ కంటే వేగంగా ఉంటుంది | ఇంటర్ఫేస్ కొంత నెమ్మదిగా ఉంటుంది మరియు అదనపు ఇందిరెక్షన్ అవసరం |
సాధారణ తరగతి | ఇది ఒక నైరూప్య తరగతిని మాత్రమే విస్తరించగలదు | బహుళ ఇంటర్ఫేస్లను అమలు చేయవచ్చు |
కన్స్ట్రక్టర్లు | ఒక నైరూప్య తరగతి కన్స్ట్రక్టర్లను కలిగి ఉంటుంది | ఇంటర్ఫేస్ కన్స్ట్రక్టర్లను కలిగి ఉండదు |
బహుళ వారసత్వం | ఒక నైరూప్య తరగతి మరొక తరగతిని విస్తరించగలదు మరియు బహుళ జావా ఇంటర్ఫేస్లను అమలు చేయగలదు | ఇంటర్ఫేస్ మరొక జావా ఇంటర్ఫేస్ను మాత్రమే విస్తరించగలదు |
బాగా, ఇప్పుడు మీరు జావాలో నైరూప్య తరగతి మరియు ఇంటర్ఫేస్ మధ్య ఉన్న ముఖ్యమైన తేడాలు. కానీ, ఈ రెండింటిలో ఏది ఉపయోగించాలో మీరు ఎలా నిర్ణయిస్తారు?
ఎప్పుడు అబ్స్ట్రాక్ట్ క్లాస్ ఉపయోగించాలి & ఎప్పుడు ఇంటర్ఫేస్ వాడాలి?
కింది సందర్భాలలో నైరూప్య తరగతులను ఉపయోగించడాన్ని పరిగణించండి:
- మీకు కొన్ని సంబంధిత తరగతులు ఉంటే భాగస్వామ్యం చేయాలి కోడ్ యొక్క అదే పంక్తులు
- మీరు నిర్వచించాలనుకున్నప్పుడు నాన్-స్టాటిక్ లేదా ఫైనల్ కాని ఫీల్డ్లు
- ఉన్నప్పుడుపద్ధతులు లేదా క్షేత్రాలులేదా అవసరం యాక్సెస్ మాడిఫైయర్లు పబ్లిక్ కాకుండా (రక్షిత మరియు ప్రైవేట్ వంటివి)
కింది సందర్భాలలో ఇంటర్ఫేస్లను ఉపయోగించడాన్ని పరిగణించండి:
- మీరు సాధించాలనుకున్నప్పుడు స్వచ్ఛమైన సంగ్రహణ
- మీరు ఉద్యోగం చేయాలనుకుంటే బహుళ , అనగా,ఒకటి కంటే ఎక్కువ ఇంటర్ఫేస్లను అమలు చేయండి
- మీరు ఒక నిర్దిష్ట డేటా రకం యొక్క ప్రవర్తనను పేర్కొనాలనుకున్నప్పుడు, కానీ దాని ప్రవర్తనను ఎవరు అమలు చేస్తారనే దాని గురించి ఆందోళన చెందరు.
ఇది ఈ వ్యాసం చివరకి మనలను తీసుకువస్తుంది. ఇంటర్వ్యూలో నేను తరచుగా అడిగే జావా ప్రశ్నలలో ఒకదాన్ని కవర్ చేసాను, ఇది జావాలో నైరూప్య తరగతి మరియు ఇంటర్ఫేస్ మధ్య వ్యత్యాసం.
మీరు వీలైనంత వరకు ప్రాక్టీస్ చేశారని నిర్ధారించుకోండి మరియు మీ అనుభవాన్ని తిరిగి పొందండి.
చూడండి ప్రపంచవ్యాప్తంగా విస్తరించి ఉన్న 250,000 మందికి పైగా సంతృప్తికరమైన అభ్యాసకుల నెట్వర్క్తో విశ్వసనీయ ఆన్లైన్ లెర్నింగ్ సంస్థ ఎడురేకా చేత. మీ ప్రయాణంలో అడుగడుగునా మీకు సహాయం చేయడానికి మేము ఇక్కడ ఉన్నాము, ఈ జావా ఇంటర్వ్యూ ప్రశ్నలతో పాటుగా, మేము జావా డెవలపర్గా ఉండాలనుకునే విద్యార్థులు మరియు నిపుణుల కోసం రూపొందించిన ఒక పాఠ్యాంశంతో ముందుకు వచ్చాము.
మాకు ప్రశ్న ఉందా? దయచేసి ఈ ‘జావా మ్యాప్ ఇంటర్ఫేస్’ యొక్క వ్యాఖ్యల విభాగంలో పేర్కొనండి వ్యాసం మరియు మేము వీలైనంత త్వరగా మిమ్మల్ని సంప్రదిస్తాము.