سمات فئة Java
سمات فئة Java
في الفصل السابق ، استخدمنا مصطلح "متغير" x
في المثال (كما هو موضح أدناه). إنها في الواقع
سمة من سمات الفصل. أو يمكنك القول أن سمات الفئة هي متغيرات داخل الفصل:
مثال
أنشئ فصلًا يسمى " Main
" بسمتين: x
و y
:
public class Main {
int x = 5;
int y = 3;
}
مصطلح آخر لسمات الفئة هو الحقول .
الوصول إلى السمات
يمكنك الوصول إلى السمات عن طريق إنشاء كائن من الفصل ، وباستخدام صيغة النقطة ( .
):
سيُنشئ المثال التالي كائنًا Main
للفئة بالاسم myObj
. نستخدم x
السمة على الكائن لطباعة قيمته:
مثال
أنشئ كائنًا يسمى " myObj
" واطبع قيمة x
:
public class Main {
int x = 5;
public static void main(String[] args) {
Main myObj = new Main();
System.out.println(myObj.x);
}
}
تعديل السمات
يمكنك أيضًا تعديل قيم السمات:
مثال
اضبط القيمة x
على 40:
public class Main {
int x;
public static void main(String[] args) {
Main myObj = new Main();
myObj.x = 40;
System.out.println(myObj.x);
}
}
أو تجاوز القيم الموجودة:
مثال
غيّر القيمة x
إلى 25:
public class Main {
int x = 10;
public static void main(String[] args) {
Main myObj = new Main();
myObj.x = 25; // x is now 25
System.out.println(myObj.x);
}
}
إذا كنت لا تريد القدرة على تجاوز القيم الموجودة ، فقم بتعريف السمة على أنها final
:
مثال
public class Main {
final int x = 10;
public static void main(String[] args) {
Main myObj = new Main();
myObj.x = 25; // will generate an error: cannot assign a value to a final variable
System.out.println(myObj.x);
}
}
تكون final
الكلمة الأساسية مفيدة عندما تريد أن يقوم متغير بتخزين نفس القيمة دائمًا ، مثل PI (3.14159 ...).
الكلمة الأساسية تسمى final
"معدِّل". سوف تتعلم المزيد عن هذه في فصل معدِّلات جافا .
كائنات متعددة
إذا قمت بإنشاء كائنات متعددة من فئة واحدة ، يمكنك تغيير قيم السمات في كائن واحد ، دون التأثير على قيم السمات في الآخر:
مثال
غيّر القيمة x
إلى 25 بوصة ، myObj2
واتركها كما هي:x
myObj1
public class Main {
int x = 5;
public static void main(String[] args) {
Main myObj1 = new Main(); // Object 1
Main myObj2 = new Main(); // Object 2
myObj2.x = 25;
System.out.println(myObj1.x); // Outputs 5
System.out.println(myObj2.x); // Outputs 25
}
}
سمات متعددة
يمكنك تحديد العديد من السمات كما تريد:
مثال
public class Main {
String fname = "John";
String lname = "Doe";
int age = 24;
public static void main(String[] args) {
Main myObj = new Main();
System.out.println("Name: " + myObj.fname + " " + myObj.lname);
System.out.println("Age: " + myObj.age);
}
}
سيعلمك الفصل التالي كيفية إنشاء طرق الفصل وكيفية الوصول إليها باستخدام الكائنات.