"హాయ్, అమిగో!"

"హాయ్, ఎల్లీ!"

"ఈ రోజు నేను మీకు జావాలో తరగతుల గురించి చాలా చెప్పబోతున్నాను."

" వివరణ సంఖ్య. 1. నేను ఒక సారూప్యతతో ప్రారంభిస్తాను. భౌతిక ప్రపంచంలోని అన్ని వస్తువులు పరమాణువులను కలిగి ఉంటాయి. వివిధ రకాల అణువులు ఉన్నాయి: హైడ్రోజన్, ఆక్సిజన్, ఇనుము, యురేనియం... ఈ పరమాణువుల కలయికలు వివిధ అణువులు, పదార్థాలు మరియు వస్తువులు."

"ఈ పరమాణువులు ఎలక్ట్రాన్లు మరియు ప్రోటాన్లు మరియు న్యూట్రాన్లతో కూడిన న్యూక్లియస్ వంటి కొన్ని అంతర్గత నిర్మాణాలను కలిగి ఉంటాయి."

"అవును, పరమాణువుల నిర్మాణం గురించి నాకు కొంచెం తెలుసు. నేను రోబోట్‌ని!"

"జావా ప్రపంచం ఇదే విధంగా నిర్మించబడింది. ప్రోగ్రామ్‌లు వివిధ రకాల వస్తువులను (తరగతులు) కలిగి ఉంటాయి. వివిధ తరగతులు, వివిధ అంతర్గత నిర్మాణాలను (వేరియబుల్స్ మరియు మెథడ్స్) కలిగి ఉంటాయి."

"మనం ఒక ప్రోగ్రామ్‌ను మొత్తంగా పరిశీలిస్తే, దానిలోని బిల్డింగ్ బ్లాక్‌లు వస్తువులు. తరగతులు బ్లాక్‌ల రకాలు. మరో మాటలో చెప్పాలంటే, వివిధ రకాల బ్లాక్‌లు వివిధ తరగతుల వస్తువులు. "

"నేను అర్థం చేసుకున్నానని అనుకుంటున్నాను."

" వివరణ సంఖ్య. 2. మనకు కొత్త ఆబ్జెక్ట్ రకం అవసరమైనప్పుడు, మేము కొత్త తరగతిని సృష్టిస్తాము మరియు దాని అంతర్గత వస్తువులు ప్రవర్తించే విధానాన్ని నిర్వచిస్తాము. "

"ఇది చాలా సాధారణమైనదిగా అనిపిస్తుంది. ఇది స్పష్టంగా కనిపిస్తోంది, కానీ మీరు నిర్దిష్టంగా ఏమీ చెప్పలేదు."

"అంతర్గత నిర్మాణం పరంగా, ఒక తరగతి ఏదైనా చేసే పద్ధతులు మరియు డేటాను నిల్వ చేయడానికి పద్ధతుల ద్వారా ఉపయోగించే వేరియబుల్స్‌ను కలిగి ఉంటుంది. "

"కాబట్టి, క్లాస్ అనేది పద్ధతుల సమితి అని చెప్పడం మరింత సరళంగా ఉంటుందా?"

"దాదాపు. మరింత ఖచ్చితంగా చెప్పాలంటే, తరగతి అనేది విభిన్న విలువలను నిల్వ చేయడానికి ఈ పద్ధతుల ద్వారా ఉపయోగించే సంబంధిత పద్ధతులు మరియు భాగస్వామ్య వేరియబుల్‌ల సమూహం."

"నేను చూస్తున్నాను. కొత్త తరగతిని సృష్టించడానికి, మనం ముందుగా ఈ పద్ధతులను వ్రాయాలి..."

"అవును. మరియు వివిధ పద్ధతులు ఏ వేరియబుల్స్ పంచుకోవాలో కూడా మనం నిర్ణయించుకోవాలి. మేము ఈ వేరియబుల్స్‌ను పద్ధతుల నుండి తీసివేసి, వాటిని క్లాస్‌లో ఉంచుతాము, అనగా స్థానిక వేరియబుల్స్‌ను మెంబర్ (ఉదాహరణ) వేరియబుల్స్‌గా మారుస్తాము."

"ప్రాథమికంగా, ఒక తరగతి ఇలా సృష్టించబడింది:

1. ప్రోగ్రామర్ తమకు ఏ ఇతర వస్తువులు కావాలో నిర్ణయిస్తారు.

2. ప్రోగ్రామర్ ఈ వస్తువులను వారు ఏమి చేయాలనే దానిపై ఆధారపడి వాటిని వివిధ రకాలుగా విభజిస్తారు.

3. ప్రోగ్రామర్ ప్రతి రకానికి ప్రత్యేక తరగతిని వ్రాస్తాడు.

4. ఒక తరగతిలో, వారు అవసరమైన పద్ధతులు మరియు వేరియబుల్‌లను ప్రకటిస్తారు.

5. ప్రతి పద్ధతిలో, వారు ఏమి చేయాలనుకుంటున్నారో ఆ పద్ధతిని చేయడానికి వారు ఆదేశాలను వ్రాస్తారు.

6. తరగతి సిద్ధంగా ఉంది. మీరు ఇప్పుడు తరగతి వస్తువులను సృష్టించవచ్చు."

"కూల్! ఎంత ఆసక్తికరమైన నమూనా! నేను దానిని గుర్తుంచుకోవాలి."

"దానిని గుర్తుంచుకోండి. ఇది ఉపయోగపడుతుంది. ప్రోగ్రామ్‌ను వస్తువులుగా విభజించమని పిలిచే ప్రోగ్రామింగ్ ఫిలాసఫీని ఆబ్జెక్ట్-ఓరియెంటెడ్ ప్రోగ్రామింగ్ ( OOP ) అంటారు ."

"జావా అనేది OOP భాషకి ఒక క్లాసిక్ ఉదాహరణ: జావాలో, ప్రతిదీ ఒక వస్తువు."

"జావాను అధ్యయనం చేయడం రెండు పెద్ద పనులను కలిగి ఉంటుంది: మీ స్వంత తరగతులను ఎలా వ్రాయాలో నేర్చుకోవడం మరియు ఇతరుల తరగతులను ఎలా ఉపయోగించాలో నేర్చుకోవడం . ఈ రోజు మనం వీటిలో సరళమైన వాటితో ప్రారంభిస్తాము. మేము సరళమైన తరగతులను ఎలా వ్రాయాలో నేర్చుకుంటాము మరియు వాస్తవానికి , ఈ తరగతుల ఆబ్జెక్ట్‌లను ఎలా సృష్టించాలి. ఆబ్జెక్ట్‌లను తరచుగా క్లాస్ యొక్క 'ఇన్‌స్టాన్స్' అని కూడా పిలుస్తారు. అవి పర్యాయపదాలు; రెండు వ్యక్తీకరణలు సరైనవి."

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

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

"ఒక వస్తువును సృష్టించడానికి, new class_name()కోడ్‌లో ' ' అని వ్రాయండి. ఇక్కడ కొన్ని ఉదాహరణలు ఉన్నాయి:"

ఉదాహరణలు
Cat cat = new Cat();
Reader reader = new BufferedReader(new InputStreamReader(System.in));
InputStream is = new FileInputStream(path);

"ఒక వస్తువు రెండు ఆసక్తికరమైన లక్షణాలను కలిగి ఉంటుంది:"

" మొదటిది . ప్రతి వస్తువు దాని స్వంత ఉదాహరణ వేరియబుల్స్ యొక్క కాపీని నిల్వ చేస్తుంది. దీనర్థం ఒక తరగతిలో x మరియు y ఉదాహరణ వేరియబుల్స్ ప్రకటించబడి మరియు ఆ తరగతికి చెందిన 10 ఆబ్జెక్ట్‌లు సృష్టించబడితే, ప్రతి వస్తువు దాని స్వంత వేరియబుల్‌లను కలిగి ఉంటుంది. వేరియబుల్‌లను ఒకదానిలో మార్చడం ఆబ్జెక్ట్ మరొక ఆబ్జెక్ట్‌లోని వేరియబుల్స్‌ను ప్రభావితం చేయదు. "

" రెండవది . ఆబ్జెక్ట్‌లను సృష్టించేటప్పుడు, మీరు విభిన్న ఆర్గ్యుమెంట్‌లను పాస్ చేయవచ్చు. ఆబ్జెక్ట్‌ను ప్రారంభించేందుకు ఈ విలువలు ఉపయోగించబడతాయి. నవజాత శిశువుకు పేరు పెట్టడం లాంటిది. చాలా తరగతులకు తరగతి యొక్క సందర్భాలను (వస్తువులను) సృష్టించడానికి ఇటువంటి వాదనలు అవసరం. "

"నాకు అర్థమైంది. ఇన్‌స్టాన్స్ వేరియబుల్స్ గురించి మీరు ఏమి చెప్పారు?"

"ప్రతి వస్తువుకు దాని స్వంత డేటా ఉంటుంది. ఇవి ఇన్‌స్టాన్స్ వేరియబుల్స్."

జావా కోడ్ స్క్రీన్ అవుట్‌పుట్:
Cat cat1 = new Cat();
cat1.name =  "Oscar";

Cat cat2 = new Cat();
cat2.name = "Smudge";

System.out.println(cat1.name);
System.out.println(cat2.name);
ఆస్కార్
స్మడ్జ్