عرض مشاركة واحدة
منتديات طلاب وطالبات جامعة الملك عبد العزيز منتديات طلاب وطالبات جامعة الملك عبد العزيز
قديم 05-01-2010, 02:37 AM   #45

أحـمـد ظـافـر

مشرف مُتألق سابق

الصورة الرمزية أحـمـد ظـافـر

 
تاريخ التسجيل: Oct 2008
كلية: كلية الهندسة
التخصص: مدنيّة
نوع الدراسة: إنتظام
المستوى: الرابع
البلد: الدول العربية
الجنس: ذكر
المشاركات: 2,472
افتراضي رد: تدرس / تدرسي java او++ c وعندك سؤال .. تعـال / تعالي هنا

المشاركة الأصلية كتبت بواسطة @فراشة الربيع@ مشاهدة المشاركة
السلام عليكم
شباب وصبايا الجافا
يلي فاهمين شبتر 4 في الجافا ياريت يشرحو لينا حق كتابة 2 كلاس ماني فاهمة وفوق كدة عندنا امتحان وتسليم 4 برامج وبالصراحة مررررررررررة طويلة 1
بسم الله الرحمن الرحيم

وعليكم السلام .


بداية لابد ان نعرف ان لغة الجافا عبارة عن لغة object-oriented programming
يعني لغة برمجة بالكائنات الشيئية أن الجافا تستخدم كتل مختلفه تكون البرنامج الواحد
ليست مثل لغات البرمجه الاخرى التي تستخدم Procedural Programming
في chapter 2
I want to emphasize this point again: When you write a class in Java, you are creating a
new data type. This concept of creating data types and developing programs based on the
program’s data is the basis of object-oriented programming. We will discuss the details of
writing classes in Chapter 4, “Classes and Objects








نفهم من هنا انه للإيجاد بينانات جديده في البرنامج فإننا لابد من اننا نصنع كلاس في البرنامج
Public class MyProgram {
}

وكمان قال لنا ان القاعدة الرئسيه للـobject-oriented programming هي البيانات بأنواعها
وان تطوير البرامج يعتمد عليها

نأتي للمهم الآن
بدايتا نحط تعريف للكلاس وللأوبجكت :
class is a deion of an object.
الكلاس هو اللي يصف لنا الاوبجكت ( خصائصه ومكوناته وماذا يفعل ؟ )
object is defined to be an instance of a class.
الاوبجكت يبين لنا حالة الكلاسات المكونه لها
اذا عندنا اوبجكت وبداخلها الكلاس هذا مثال للتوضيح وكما نعرف منه مكونات الاوبجكت



عندنا اوبجكت اللي هو المستخدم Employee
الآن لازم نعرف عن هذا الـ objectحاجتين رئيسية ( خصائصه وش اللي يملكه(Has) , وش اللي ممكن يسويه(dose) )

اول حاجة اللي هي الخصائص وهي المكون الأول للـ objectنسميها بأي اسم من الاسماء التاليه
(fields / attributes / properties / datamembers )
طيب وش الاشياء اللي يملكها المستخدم او خصائصه مثلا :
راح نحدد لكل وحده مايجب انه نضعه لها من انواع البيانات اذا كان ارقام او نص
Name بالطبع هنا سيكون عن نص لذلك راح نستخدم نوع البيانات (String)
Address هنا ممكن ان العنوا يكون ارقام او كلام لذلك سنضع (String) ايضا
Number طبعا حتى نكتب رقم جوال المستخدم نستخدم نوع البيانات الملائم يعني راح نستخدم الارقام الصحيحه الاهم هو اختيار النوع الاقرب بإمكاننا نستخدم bute او short ولكنها لن تكون كافيه للادخال الرقم كاملا لذلك راح نستخدم ( (int , ولو كان الرقم اللي راح يدخله رقم دولي مثلا وراح يكتب في بدايته +966 مثلا فعلامة الزائد هنا ماراح تدخل معانا فنستخدم (String) لو كان الرقم دولي مثلا .
Social Security Number هنا نستخدم ( (int او short او byte اللي يعجبك
Salary هنا ممكن يكون راتب الاخ في الله 3500.50 لذلك راح نستخدم double او float

الآن نأتي عند المكون الثاني وهو ماذا يمكن أن يعمل هذا الأوبحكت اللي نسميها ((methods

Mail Cheque من ضمن الاشياء اللي ممكن انه يعملها الاخ في الله ان يطلع له بريد او مايسمونه ( الصك البريدي ) كمان هنا لازم نحدد نوع البيانات المطلوب
compute Salary وايضا ممكن انه يعمل حساب للراتب بتاعه وهنا نحدد نوع البيانات المطلوب

وفيه حاجات كثير ممكن انه يعملها

الان اتفقنا انه الاشياء اللي ممكن انه يعملها الاوبجكت هي الـطرق Methods

الآن بعد ماعرفنا الاوبجكت كامل ومكوناته نأتي ونكتب الكلاس

كتابة الكلاس بسطيه جدا حتى اكتب كلا لهذا الاوبجكت (عرفنا فيما سبق ان الكلاس يصف لي الاوبجكت يعني الكلاس راح يحتوي على كل تلك الاشياء اللي يمكلها الكلاس وكل تلك الطرق والاشياء اللي يعملها )

اذا راح نكتب الكلاس بإسم الاوبجكت

public class Employee {
}
الان نضيف ماعندنا من خصائص لهذا الاوبجكت
public class Employee {
public String name;
public String address;
public int number;
public int ssn; // Social Security Number
public double salary
}

طبعا public هنا كتابتها ماهي ضرورية .
الآن نكتب الطرق والاشياء اللي ممكن يعملها
يعني الـ Mail Cheque راح يكون الطريقة الأولى
public void mailCheque() {
// mail the salary cheque
System.out.println("Mailing cheque to " + name + "\n" + address);

}

public double computeSalary() {
return (salary / 52);
}

فيصبح الكلاس بالشكل التالي :

public class Employee {
public String name;
public String address;
public int number;
public int ssn; // Social Security Number
public double salary;

// Methods for Employee Class
public void mailCheque() {
// mail the salary cheque
System.out.println("Mailing cheque to " + name + "\n" + address);

}

public double computeSalary() {
return (salary / 52);
}
}

ملحوظة : لا يمكن تشغيل أي برنامج جافا الا وهو يحتوي على الــ class main
يعني اللي فيه العبارة public static void main(String[] args(

الآن نكتب الــ class main
وراح نعرف فيه تلك المتغيرات اللي وضعناها ونعطيها قيم
نأتي الآن نكتب class main

في هذا النوع من البرامج في الجافا راح نتعرف على new هي عبارة عن keyword
مهمتها انه تشوف للأوبجكت حقنا مكان في الذاكره وكمان نستخدمها عشان ترجعنا للأوجكت الاول اللي كتبناه في الكلاس الاول اللي هو Employee وحتى نرجع له لازم نستدخم new وحتى نضع قيمه للمتغير حق Employee فإننا راح نستخدم new Employee()
Employee e;
e = new Employee();

وهذا الكلاس :
public class EmployeeDemo {


public static void main(String[] args) {
Employee emp, sadiq, akhi;


e = new Employee();

والان حتى نعطي المتغيرات الموجوده في الكلاس الأول قيم لابد اننا نربطها بالمتغير حق الـEmployee
ونربطها فيه عن طريق الدوت (.)

e.name = "Usama";
e.address = "123, Jeddah St, Jeddah";
e.salary = 123456.0;
System.out.println("Employee name : " + e.name);
System.out.println("Employee salary: " + emp.computeSalary());


ملحوظة : مانقدر نكتب الكلاسين في package وحده لازم الكلاس مين في package والكلاس الثاني في package
بالنسبه اذا كنت تستخدم IDE
في المفكره يمكن ضم الإثنين معا .

ملحوظة : يمكن ااننا نستخدم طريقة غير اللي ذكرنها هنا عشان نرجع للأوبجكت الاول بإستخدام المصفوفات يعني نقدر نقول

Employee[]eArray = new

وبدل من e.name = "ahmad" ;

نقول :
eAray[].name = "ahmad";

ملحوظة : أقدر اسمي المتغير اللي عندي بنفس اسم المتغير نفسه يعني لو عندي متغير String name
ووضع للمتغير قيمه وهي name = "Ahmed" لكن اقدر اسمي المتغير بنفسه واقول
Name = "name" ولكن راح يطلع معي خطأ في هذي الحاله استخدم الـThis فأقول :

This.name = "name" هنا مارا يطلع معي خطأ


جرب الجوال مثلا يملك name و model و memory و price
والـmethod مثلا calling و send message و reciev call



طبعا الشرح بصورة عامه في الشبتر مفصله وموضحه كل النقاط .

وهذي صورة موضحه أكثر للموضوع .




في المرفقات الشرح في ملف ورد
معليش ع اللخبطة في الشرح والألوان << ذوقي مش ولابد نقرتين لعرض الصورة في صفحة مستقلة
ارجوا ان تكوني فهمت الشرح , واذا فيه اي استفسار احنا حاضرين .
الملفات المرفقة
نوع الملف: doc Classes & Objects.doc‏ (51.0 كيلوبايت, المشاهدات 24)
نصائح مهمة : 1 - إفحص الملف المرفق بأي برنامج مضاد للفيروسات
2 - قم بمراسلة الإدارة عن أي مرفق يوجد به فيروس
3 - المنتدى غير مسوؤل عن مايحتويه المرفق من بيانات

 

 

لا تنس #أذكار_الصباح
لا تنس #أذكار_المساء
استغفر الله العظيم الذي لا إله إلا هو الحي القيوم وأتوب إليه.
اللهم صل على محمد وعلى آله وأصحابه والتابعين.
اللهُمَّ إرحم موتَانآ وموتـــــَى المُسلِمينْ والمُسلِمآتْ
اللهُمَّ قِهمْ عذَابَ القـــَبْر وفِتنَته.

اللهُمَّ إٍنَّا نسألُكَ حُسنَ الخَاتِمة .

 


التعديل الأخير تم بواسطة أحـمـد ظـافـر ; 05-01-2010 الساعة 02:39 AM.
أحـمـد ظـافـر غير متواجد حالياً   رد مع اقتباس