ஒரு கிளாஸை உருவாக்குதல் என்பது புதியததாக datatype உருவாக்குதலுக்கு
சமம்.எப்படி ஒரு வேரியபிள் இன்ட் அல்லது ஃப்லோட் என்கின்றோமோ அதே போல் ஒரு
ஆப்ஜெக்ட் ஆனது அந்த கிளாஸை சார்ந்ததாகும்.
ஆப்ஜெக்ட் இரு நிலைகளில் உருவாக்கப்படுகின்றது. முதலில்
அந்த கிளாஸிற்கு வேரியபிளாக அறிவிக்கப்படுகின்றது இரண்டாவது நிலையில் ஆப்ஜெக்டின் physical copy ஆனது அந்த
வேரியபிளுக்கு assign செய்யப்படுகின்றது
உதாரணமாக
Box mybox=new Box();
இந்த statement
ஆனது இரண்டு statementகளை கம்பைன்
செய்ததாகும்.
Box mybox;
Mybox=new Box();
முதல் வரியானது mybox என்னும் reference , Box டைப் ஆக அறிவிக்கப்படுகின்றது.இந்த அறிவிப்பிற்கு பிறகு mybox ஆனது null value கொண்டிருக்கின்றது..இரண்டாவது
வரியானது ஆப்ஜெக்ட்டை உருவாக்கி mybox க்கு reference assign செய்கின்றது.உண்மையில்
mybox
ஆனது Box ஆப்ஜெக்ட்டின்
நினைவக முகவரியை கொண்டிருக்கிறது.
new operator:
new operator ஆனது ஆப்ஜெக்டிற்கு ரன் டைமில் (இயக்க நேரத்தில் நினைவத்தை ஒதுக்குகின்றது.
Syntax:
Class-var=new Classname();
இங்கு class-var ஆனது ஆப்ஜெக்ட்
ஆகும். Classname
ஆனது எந்த class ன் ஆப்ஜெக்ட் உருவாக்கப்படுகின்றதோ அந்த கிளாஸின்
பெயராகும்.class name ஐ தொடரும் parentheses ஆனது constrrucorஐ குறிக்கின்றது. Constructor என்றால் என்ன என்று வரும் பாடங்களில் பார்ப்போம்.
ஆப்ஜெக்ட் assigning.
நாம் நிணைப்பது போல் b2 விற்கு b1 assign செய்ய படுவதில்லை.
உண்மையில் b1,b2 இரண்டுமே ஒரே ஆப்ஜெக்டை ரெஃபெர் செய்கின்றன.b2விற்கு என்று ஆப்ஜெக்டின் நினைவகம் ஒதுக்க படுவதில்லை. B1 எந்த நினைவகத்தை point செய்கின்றதோ அதே Box classந் நினைவகத்தை b2ம் point செய்கின்றது.
class Box
{
double width;
double height;
double depth;
}
class BoxDemo
class BoxDemo
{
public static void main(String args[])
{
public static void main(String args[])
{
double vol;
mybox1.width=10;
mybox2.height=20;
mybox.depth=15;
mybox2.width=3;
mybox2.height=6;
mybox2.depth=9;
vol=mybox1.width*mybox1.height*mybox1.depth;
System.out.println(“volume is “+vol);
vol=mybox2.width*mybox2.height*mybox2.depth;
System.out.println(“volume is “+vol);
}
}
---தொடரும்.
pink and light green text are really hard to read.
ReplyDeletenow i changed it.
ReplyDelete