Java Class Attributes: पिछले chapters में, हमने num
और model
के लिए "variables" शब्द का उपयोग किया है (नीचे उदाहरण में)। दरअसल यह class की एक attribute है। दूसरे तरीके से हम कह सकते हैं कि एक variables को class की attributes के रूप में भी जाना जाता है।
public class MyClass {
String model = "Audi R8";
int num = 10;
}
उपरोक्त उदाहरण में, हमने MyClass
नामक class के नाम के लिए दो attributes num
और model
का उपयोग किया है।
Accessing Attributes
हम class के लिए एक object बनाकर attributes को एक्सेस कर सकते हैं।
public class MyClass {
String model = "Audi R8";
public static void main(String[] args) {
MyClass myCarModel = new MyClass();
System.out.println("Car Model is: " + myCarModel.model);
}
}
// Result: Car model is: Audi R8
उपरोक्त उदाहरण में, हमने model नामक attribute के वैल्यू तक पहुँचने के लिए MyClass का एक object बनाया myCar
नामक का, एक object कैसे बनाया, जाए यह जानने के लिए Java Classes & Objects Chapter पर जाएँ।
public class MyClass {
int x = 2006;
public static void main(String[] args) {
MyClass myNumber = new MyClass();
System.out.println(myNumber.x);
}
}
// Result: 2006
उपरोक्त उदाहरण में, हमने x नामक attribute के वैल्यू तक पहुँचने के लिए MyClass का, myNumber
नामक एक object बनाया।
newObject की attribute तक पहुँचने के लिए एक dot syntax (.
) का उपयोग किया जाता है।
Example 1: myCar.
model
Example 2: myNumber.
x
Accessing Multiple Attributes
हम multiple java class attributes (जितना हम चाहे) को एक्सेस कर सकते हैं।
public class MyClass {
String model = "Audi R8";
int year = 2006;
String color = "Red";
public static void main(String[] args) {
MyClass myCar = new MyClass();
System.out.println("Car Model is: " + myCar.model);
System.out.println("Year is: " + myCar.year);
System.out.println("Color is: " + myCar.color);
}
}
/* Result:
Car model is: Audi R8
Year is: 2006
Colo is: Red */
उपरोक्त उदाहरण में, हमने myCar
नामक केवल एक ही object बनाया है और हमने उस class की सभी तीन attributes model
, year
और color
को एक्सेस किया हैं।
Modify Attributes
हम attribute के वैल्यू को modify या override भी कर सकते हैं। आइए नीचे दिए गए उदाहरण को देखते हैं।
public class MyClass {
int x = 2006;
public static void main(String[] args) {
MyClass myNumber = new MyClass();
myNumber.x = 35;
System.out.println(myNumber.x);
}
}
// Result: 35
उपरोक्त उदाहरण में, हमने myNumber
नामक एक object बनाया है और x के वैल्यू 2006 को ओवरराइड कर दिया है 35 से।
final keyword
यदि हम attributes के वैल्यू को बदलना या override नहीं करना चाहते हैं, तो attributes को final
घोषित करना होगा।
final
keyword
public class MyClass {
final int x = 2006;
public static void main(String[] args) {
MyClass myNumber = new MyClass();
System.out.println(myNumber.x);
}
}
// Result: 2006
उपरोक्त उदाहरण में, हमने attribute घोषित करने के लिए final
कीवर्ड का उपयोग किया है, इसका मतलब है कि हम उस attribute के वैल्यू को नहीं बदल सकते हैं।
आइए उन attributes के वैल्यू को बदलने का प्रयास करें जो पहले से ही एक final
कीवर्ड के साथ घोषित की गई हैं। सिस्टम एक error दिखाएगा और कोड को compile नहीं कर पायेगा।
final
keyword
public class MyClass {
final int x = 2006;
public static void main(String[] args) {
MyClass myNumber = new MyClass();
myNumber.x = 35;
System.out.println(myNumber.x);
}
}
कीवर्ड final
को "modifier" के रूप में भी जाना जाता है। Reference: Attributes