الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

static block

مغلق
بدأه علاء الصالحي في 24 يونيو 2006 · 3 رد · 683 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

ممكن حدا يشرحلي

ايش الفائدة من

static block

وليش بنستخدمه

مع مثال

وشكراً

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#2

يتطلب الصف في بعض الأحيان نوعا من التمهيد قبل أن يكون جاهزا لإنشاء كيانات.

مثال ذلك، ربما يحتاج إلى إنشاء اتصال بموقع بعيد.

وربما يحتاج ايضا الى تمهيد متغيرات ساكنه static محددة قبل استخدام أي من الطرق الساكنه في الصنف.

وللتعامل مع هذه الأوضاع، تتيح جافا الاعلان عن كتله ساكنه.

والكتله الساكنه تنفذ عند تحميل الصنف أولا. وهكذا تنفذ قبل التمكن من استخدام الصنف لأي غايه أخرى.

مثال

class StaticBlock{
	static double root1, root2;
	static{
		System.out.println("Inside static block. ");
		root1=Math.sqrt(4.0);
		root2=Math.sqrt(9.0);
	}
	StaticBlock(String msg){
		System.out.println(msg);
	}
}
class SDemo{
	public static void main(String [] args){
		StaticBlock ob=new StaticBlock("Inside Constructor ");
		System.out.println("Square root1 is :"+ StaticBlock.root1 );
		System.out.println("Square root2 is :"+ StaticBlock.root2 );
	} 
}

لاحظ بانه تم تنفيذ امر الطباعة في الكتله(static block) قبل تنفيذ امر الطباعه في المشيد (Constructor) .

بالتوفيق

11_03_06_12_48_57_1142110137Image(_66).jpg

#3

السلام عليكم,

باختصار شديد ال static block مثل ال constructor لكن الفرق أنك كما تعلم أن ال constructors تستخدم لعمل initialization لل instance variables و لكن ال static block تستخدم لعمل initialization لل static variables.

#4

شكراً لكم اخوتي على المعلومات القيمة

م.علاء

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

هذا الموضوع مغلق.

مواضيع مشابهة