తరగతులు సంక్లిష్ట డేటా రకాలు అనే వాస్తవం గురించి మేము ఇప్పటికే మాట్లాడాము. ఇప్పుడు క్లాస్ల ఇతర వైపు గురించి కొంచెం మాట్లాడుకుందాం — జావా మెషీన్ ద్వారా తరగతులు ఎలా నిర్వహించబడుతున్నాయి. జావాలో ప్రతిదీ ఒక వస్తువు, తరగతి కూడా అని గుర్తుంచుకోండి. తరగతి ఒక వస్తువు. అది మీకు ఆశ్చర్యంగా ఉందా? అప్పుడు కొనసాగిద్దాం.
మెమరీలోకి తరగతిని లోడ్ చేస్తోంది
వాస్తవానికి, ఒక తరగతిని మెమరీలోకి లోడ్ చేసినప్పుడు, మూడు ప్రత్యేక "వస్తువులు" సృష్టించబడతాయి:
దృష్టాంతం యొక్క సంక్షిప్త వివరణ:
పసుపు దీర్ఘచతురస్రం:
కోడ్ ఫైల్ డిస్క్లో ".class" పొడిగింపుతో ఫైల్గా నిల్వ చేయబడుతుంది. ఇది తరగతి, దాని ఫీల్డ్లు మరియు పద్ధతుల గురించి సమాచారాన్ని కలిగి ఉంటుంది, అలాగే బైట్కోడ్లో కంపైల్ చేయబడిన పద్ధతుల యొక్క సోర్స్ కోడ్.
నారింజ దీర్ఘచతురస్రం:
జావా మెషీన్ ఒక తరగతిని మెమరీలోకి లోడ్ చేసినప్పుడు, అది కంప్యూటర్ యొక్క ప్రాసెసర్ మరియు ఆపరేటింగ్ సిస్టమ్కు ప్రత్యేకమైన మెషీన్ కోడ్గా బైట్కోడ్ను కంపైల్ చేస్తుంది. ఈ మెషిన్ కోడ్కి జావా మెషీన్కు మాత్రమే యాక్సెస్ ఉంది. జావా ప్రోగ్రామర్లుగా, మాకు దీనికి ప్రాప్యత లేదు.
ఆకుపచ్చ దీర్ఘచతురస్రం:
జావా యంత్రం తరగతి యొక్క అన్ని స్టాటిక్ వేరియబుల్స్ మరియు పద్ధతులను కలిగి ఉన్న ఒక వస్తువును సృష్టిస్తుంది. మీరు తరగతి పేరును ఉపయోగించి ఈ "ఆబ్జెక్ట్"కి యాక్సెస్ చేస్తారు.
ఉదాహరణకు, మీరు వ్రాసేటప్పుడు , మీరు తరగతిలో ఉన్న స్టాటిక్ వేరియబుల్ని సూచిస్తారు . ఈ వస్తువు మన ఆకుపచ్చ దీర్ఘచతురస్రం. మరియు అక్కడే స్టాటిక్ వేరియబుల్ నిల్వ చేయబడుతుంది.java.lang.Math.PI
PI
java.lang.Math
java.lang.Math
PI
నీలం దీర్ఘచతురస్రం:
జావా మెషీన్ తరగతి యొక్క కోడ్ను మెమరీలోకి లోడ్ చేసినప్పుడు, అది ఒక ప్రత్యేక java.lang.Class
వస్తువును సృష్టిస్తుంది, ఇది లోడ్ చేయబడిన తరగతి గురించి సమాచారాన్ని నిల్వ చేస్తుంది: దాని పేరు, పద్ధతి పేర్లు, ఫీల్డ్ పేర్లు మరియు రకాలు మొదలైనవి.
"క్లాస్" అనే పేరు కొంచెం గందరగోళంగా ఉంటుంది. దీన్ని ClassInfo అని పిలవడం మరింత సమంజసంగా ఉంటుంది, ఎందుకంటే ఈ తరగతి కేవలం లోడ్ చేయబడిన తరగతి గురించి కొంత సమాచారాన్ని నిల్వ చేస్తుంది.
మీరు ఇలాంటి ఆదేశాన్ని ఉపయోగించి ఏ రకానికి అయినా క్లాస్ ఆబ్జెక్ట్ని పొందవచ్చు:
Class name = ClassName.class;
ఉదాహరణలు:
కోడ్ | గమనిక |
---|---|
|
తరగతి Class గురించి సమాచారంతో ఒక వస్తువును పొందండిString |
|
తరగతి Class గురించి సమాచారంతో ఒక వస్తువును పొందండిObject |
|
తరగతి Class గురించి సమాచారంతో ఒక వస్తువును పొందండిInteger |
|
రకం Class గురించి సమాచారంతో వస్తువును పొందండిint |
|
రకం Class గురించి సమాచారంతో వస్తువును పొందండిvoid |
మీరు ఏదైనా వస్తువు నుండి తరగతి వివరణ వస్తువుకు సూచనను కూడా పొందవచ్చు, ఎందుకంటే ప్రతి వస్తువుకు తరగతి getClass()
నుండి వారసత్వంగా వచ్చే పద్ధతి ఉంటుంది Object
.
ఉదాహరణలు:
కోడ్ | గమనిక |
---|---|
|
అదే వస్తువుString.class |
|
అదే వస్తువుInteger.class |
|
అదే వస్తువుBoolean.class |
GO TO FULL VERSION