సూచన రకం మార్పిడులు - 1

"మరియు ఇప్పుడు, డియెగో నుండి ఒక చిన్న పాఠం. సంక్షిప్త మరియు పాయింట్. సూచన రకం మార్పిడుల గురించి."

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

కోడ్ వివరణ
String s = "mom";
Object o = s; // o stores a String
ఒక సాధారణ విస్తృత సూచన మార్పిడి
Object o = "mom"; // o stores a String
String s2 = (String) o;
ఒక సాధారణ సంకుచిత సూచన మార్పిడి
Integer i = 123; // o stores an Integer
Object o = i;
విస్తరిస్తున్న మార్పిడి.
Object o = 123; // o stores an Integer
String s2 = (String) o;
రన్‌టైమ్ లోపం!
మీరు స్ట్రింగ్ సూచనకు పూర్ణాంక సూచనను ప్రసారం చేయలేరు.
Object o = 123; // o stores an Integer
Float s2 = (Float) o;
రన్‌టైమ్ లోపం!
మీరు ఫ్లోట్ సూచనకు పూర్ణాంక సూచనను ప్రసారం చేయలేరు.
Object o = 123f; // o stores a Float
Float s2 = (Float) o;
అదే రకానికి మార్పిడి. సంకుచిత సూచన మార్పిడి.

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

"ఇది ప్రతిదీ స్పష్టంగా ఉన్న అరుదైన ఉదాహరణ."

" ఈ ఉదాహరణలలో లోపాలను నివారించడానికి ,  ఆబ్జెక్ట్ వేరియబుల్ ద్వారా ఏ రకాన్ని సూచిస్తుందో తెలుసుకోవడానికి మాకు ఒక మార్గం ఉంది: "

కోడ్
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;
}
3
టాస్క్
Java Syntax,  స్థాయిపాఠం
లాక్ చేయబడింది
Code entry
Your attention, please! Now recruiting code entry personnel for CodeGym. So turn up your focus, let your fingers relax, read the code, and then... type it into the appropriate box. Code entry is far from a useless exercise, though it might seem so at first glance: it allows a beginner to get used to and remember syntax (modern IDEs seldom make this possible).

"ఆబ్జెక్ట్ రకం గురించి మీకు 100% ఖచ్చితంగా తెలియకపోతే, ప్రతి విస్తరణ మార్పిడికి ముందు మీరు ఈ తనిఖీని నిర్వహించాలి."

"దొరికింది."