اذهب إلى المحتوى
  • 0

ما معنى (this,class) برمجيا\نظريا ؟

Leorio Hisoka

السؤال

اثناء متابعتى للدورس فى اكاديمة حسوب حول البرمجة لاندرويد
وجدت هذا السطر :

			Intent i = new Intent(MainActivity.this, SecondActivity.class);

انا اعلم جيدا ماذا يفعل هذا السطر وهو الانتقال من Activity to Another ، ولكن عندى سؤال ابحث عن اجابه له منذ فترة
الكلمتين (this,class) ما المعنى منهم ؟
يعنى ماذا يضيفون او ماذا يعبرون عن او ماذا يفعلون ؟
ماذا لو ازالناهم ؟

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1

class هو تجريد للغرض object أي هو مجموعة الأغراض التي تحمل نفس الصفات العامة ويستخدم this للتأشير على الغرض ونحن في داخله عند البناء بشكل عام لتجنب حالات الغموض وخصوصًا في حالات برمجة الصفوف التي تحوي inner classes

للتعرف على المزيد من طريقة عمل التعليمة السابقة بشكل خاص https://www.quora.com/In-Android-coding-what-does-MainActivity-this-do-and-what-are-MainActivity-and-this-separately-class-keyword-etc

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 1

اخي الكريم .. 

بالنسبة للـــ Class ::

مثلا لو قلنا انك متزوج ولديك ثلاث ابناء ..

ففي هذه الحالة تعتبر انت Class وابنائك يتم تسميتهم بالــ او Functions

وكل Functon تابع لـــ Class معين ... ( يعني انت كل واحد من ابنائك يكون تابع لك )

انت مثلا اسمك brother

والابن الاول اسمه : a

والابن الاول اسمه : b

والابن الاول اسمه : c

وعندما نقوم باستدعاء ابن من ابنائك نقوم مثلا 

فمثلا لو اردنا استدعاء الولد a

نقول brother.a

والابن الثاني brother.b

والابن الثالث brother.c

وهكذا يتم التعامل مع ال Class

وفي الاخير نستطيع القول ان الـــ class عبارة عن اوبجكت يحمل مجموعة من الفنكشن التي تتبع له ..

وتكون مكتوبة داخل الكلاس يعني لو كانت الفنكشن خارج الكلاس فلا نستطيع القوم ان هذه الفنكشن تابعة له وفي هذه الحالة نحتاج الي تعريف اسم الــــ Class التي يوجد به الفنكشن التي تكون خارج الكلاس التي نعمل عليه ..

 ومن ثم نقوم باستدعاء الفنكشن ...

Class brother
{
	public function body1()
	{
		// اول ولد	
	}
	public function body2()
	{
		// ثاني ولد
	}
	public function body3()
	{
		// ثالث ولد
	}
}

مثال على كيفية استدعاء فنكشن خارح ال Class

مثلا :: ( ملاحظة الكود المكتوب بلغة PHP ) .

Class std
{
	public function StdName()
	{
		return "mahmmoud";
	}
	public function StdAge()
	{
		return 25;
	}
}
// في حال اردنا استدعاء اسم الطالب  من ال Class std
// نقــــول
std s = new std();
echo s.StdName();

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 13 ساعات قال Bian Alabras:

class هو تجريد للغرض object أي هو مجموعة الأغراض التي تحمل نفس الصفات العامة

 

عفوا اظن انك تتحدث عن الكلاس عامة
وانا اقصد معنى كلمة class الموجودة هنا تحديدا

SecondActivity.class

وليست ما نضعها فى الاعلان عن الكلاس

public class something{
}

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ On 3/21/2018 at 17:51 قال محمود قاسم2:

حبيبي بالنسبة ل this يرجى توضيح لغة البرمجة 

انا استخدم لغة جافا ، ولكن لا اظن ان هناك فرق ، فمهفوم البرمجة واحد فى كل اللغات
 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

لا اخي اريد التوضيح لك ببعض الامثلة ::

اولا بالنسبة للغة PHP فان this تعني الـــ Class الي انت شغال عليه ..

ثانياً بالنسبة للغة C# فان this تعني الفورم الذي اعمل عليه .

 

فلكل لغة برمجة هناك استخدام معين للعبارة this

Java ولا JavaScript  ؟؟

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 9 ساعات قال محمود قاسم2:

فلكل لغة برمجة هناك استخدام معين للعبارة this

Java ولا JavaScript  ؟؟

java
 

اقتباس

اولا بالنسبة للغة PHP فان this تعني الـــ Class الي انت شغال عليه ..

ثانياً بالنسبة للغة C# فان this تعني الفورم الذي اعمل عليه .

اظن ان الامر مختلط عليك يا صديق ، انا اظن ان الاثنين لهم نفس المعنى فى اللغتين ، فقط انت تستخدم لفظ مختلف
انا فهمت ال this يتبقي ال class فلن افهمه بشكل كامل بعد
 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

اشكرك جدا على شرحك , ولكن اسمح لى ان الف انتباهك انى لا اتكلم عن معنى ال class فى البرمجة عامة
انا اتكلم عن معنى كلمة class ك keyword
انظر الى السؤال فى الاعلى فى بداية الموضوع

Intent i = new Intent(MainActivity.this, SecondActivity.class);

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...