"మరియు ఇప్పుడు, డియెగో నుండి ఒక చిన్న పాఠం. సంక్షిప్త మరియు పాయింట్. సూచన రకం మార్పిడుల గురించి."
"ఆబ్జెక్ట్ వేరియబుల్స్తో ప్రారంభిద్దాం. మీరు అలాంటి వేరియబుల్కి ఏదైనా రిఫరెన్స్ రకాన్ని కేటాయించవచ్చు ( విస్తరిస్తున్న మార్పిడి ). అయితే, అసైన్మెంట్ను ఇతర దిశలో ( సంకుచిత మార్పిడి ) చేయడానికి , మీరు తప్పనిసరిగా తారాగణం ఆపరేషన్ని స్పష్టంగా సూచించాలి:"
కోడ్ | వివరణ |
---|---|
|
ఒక సాధారణ విస్తృత సూచన మార్పిడి |
|
ఒక సాధారణ సంకుచిత సూచన మార్పిడి |
|
విస్తరిస్తున్న మార్పిడి. |
|
రన్టైమ్ లోపం! మీరు స్ట్రింగ్ సూచనకు పూర్ణాంక సూచనను ప్రసారం చేయలేరు. |
|
రన్టైమ్ లోపం! మీరు ఫ్లోట్ సూచనకు పూర్ణాంక సూచనను ప్రసారం చేయలేరు. |
|
అదే రకానికి మార్పిడి. సంకుచిత సూచన మార్పిడి. |
" విస్తరిస్తున్న లేదా సంకుచితమైన సూచన మార్పిడి ఆబ్జెక్ట్ను ఏ విధంగానూ మార్చదు. సంకుచిత (లేదా వెడల్పు) భాగం ప్రత్యేకంగా అసైన్మెంట్ ఆపరేషన్లో వేరియబుల్ మరియు దాని కొత్త విలువ యొక్క టైప్-చెకింగ్ (చేర్చబడదు) అనే వాస్తవాన్ని సూచిస్తుంది. "
"ఇది ప్రతిదీ స్పష్టంగా ఉన్న అరుదైన ఉదాహరణ."
" ఈ ఉదాహరణలలో లోపాలను నివారించడానికి , ఆబ్జెక్ట్ వేరియబుల్ ద్వారా ఏ రకాన్ని సూచిస్తుందో తెలుసుకోవడానికి మాకు ఒక మార్గం ఉంది: "
int i = 5;
float f = 444.23f;
String s = "17";
Object o = f; // o stores a Float
if (o instanceof Integer)
{
Integer i2 = (Integer) o;
}
else if (o instanceof Float)
{
Float f2 = (Float) o; // This if block will be executed
}
else if (o instanceof String)
{
String s2 = (String) o;
}
"ఆబ్జెక్ట్ రకం గురించి మీకు 100% ఖచ్చితంగా తెలియకపోతే, ప్రతి విస్తరణ మార్పిడికి ముందు మీరు ఈ తనిఖీని నిర్వహించాలి."
"దొరికింది."
GO TO FULL VERSION