المشرف العام
03-07-06, 12:11 AM
ما هو ال @-@@-@@-@@-@@-@@-@
كيفية استيراد import لل classes و الحزم packages
كيفية تعريف ال subclass لل @-@@-@@-@@-@@-@@-@
كيفية تنفيذ ال @-@@-@@-@@-@@-@@-@ methods
كيفية تشغيل ال @-@@-@@-@@-@@-@@-@
أولا:
نتعرف هنا على ال @-@@-@@-@@-@@-@@-@, لقد رأينا في دروس سابقة ال @-@@-@@-@@-@@-@@-@ و لكننا نتسائل ما هو. ال @-@@-@@-@@-@@-@@-@ هو برنامج ينفذ مجموعة من الاوامر التي تسمح له بأن يعمل على متصفح يدعم لغة الجافا.
سنرى في المثال اللاحق برنامج @-@@-@@-@@-@@-@@-@
import java.@-@@-@@-@@-@@-@@-@.@-@@-@@-@@-@@-@@-@;
import java.awt.Graphics;
public class HelloWorld extends @-@@-@@-@@-@@-@@-@ {
public void paint(Graphics g) {
g.drawString("Hello world!", 50, 25);
}
}
ثانيا:
نتعرف هنا على كيفية عمل استيراد import لل classes و الحزم packages.
ان اول سطرين في المثال اللاحق هما لاستيراد اثنان من ال classes المستعملات في ال @-@@-@@-@@-@@-@@-@, و هما @-@@-@@-@@-@@-@@-@ و Graphics.
import java.@-@@-@@-@@-@@-@@-@.@-@@-@@-@@-@@-@@-@;
import java.awt.Graphics;
public class HelloWorld extends @-@@-@@-@@-@@-@@-@ {
public void paint(Graphics g) {
g.drawString("Hello world!", 50, 25);
}
}
اذا ابعدنا هذان السطران فأننا نستطيع تشغيل البرنامج و لكن بشرط ان نغير الكود الى هكذا.
public class HelloWorld extends java.@-@@-@@-@@-@@-@@-@.@-@@-@@-@@-@@-@@-@ {
public void paint(java.awt.Graphics g) {
g.drawString("Hello world!", 50, 25);
}
}
كما رأينا, ان عملية استيراد ال @-@@-@@-@@-@@-@@-@ و ال Graphics تمكن البرنامج من الرجوع اليهم بدون ان يكون هناك تعريف لهم في بداية البرنامج. ال java.@-@@-@@-@@-@@-@@-@. و ال java.awt. تخبر المترجم compiler في اي حزمة package يجب ان يبحث عن @-@@-@@-@@-@@-@@-@ و Graphics.
ان كل من java.@-@@-@@-@@-@@-@@-@ و java.awt هما packages, و هما جزء من ال API و الذي يوجد في كل بيئة جافا.
ان ال package (java.@-@@-@@-@@-@@-@@-@) يحتوي على ال classes الضرورية لل @-@@-@@-@@-@@-@@-@.
ان ال package (java.awt) يحتوي على ال classes المستعملة في AWT و التي تستعمل لعمل الواجهة الرسومية لبرامج الجافا GUI.
نتسائل هنا عن الدرس السابق عندما تكلمنا عن ال System class و انه لا يحتاج الى import, السبب هنا ان ال System class هو جزء من حزمة ال java.lang, و كل شيء ضمن هذه الحزمة يستورد اوتوماتيكيا الى كل برنامج جافا.
لقد تكلمنا عن استيراد classes محددة من داخل ال packages, و لكن الان نتكلم عن استيراد ال package كاملة و ليس class بعينه.
import java.@-@@-@@-@@-@@-@@-@.*;
import java.awt.*;
public class HelloWorld extends @-@@-@@-@@-@@-@@-@ {
public void paint(Graphics g) {
g.drawString("Hello world!", 50, 25);
}
}
في لغة الجافا كل class موجود ضمن package, و سوف نتكلم عن كيفية انشاء ال packages في دروس اخرى قادمة.
ثالثا:
نتعرف هنا على كيفية تعريف ال subclass لل @-@@-@@-@@-@@-@@-@.
ان اول سطر عريض bold في المثل اللاحق, يبدأ بتعريف HelloWorld class.
import java.@-@@-@@-@@-@@-@@-@.@-@@-@@-@@-@@-@@-@;
import java.awt.Graphics;
public class HelloWorld extends @-@@-@@-@@-@@-@@-@ {
public void paint(Graphics g) {
g.drawString("Hello world!", 50, 25);
}
}
ان معنى كلمة extends في هذا البرنامج ان HelloWorld هو subclass من ال class الذي يليه @-@@-@@-@@-@@-@@-@.
رابعا:
نتعرف هنا على كيفية تنفيذ ال @-@@-@@-@@-@@-@@-@ methods.
ان السطور العريضة في المثال اللاحق تعرف ال paint method.
import java.@-@@-@@-@@-@@-@@-@.@-@@-@@-@@-@@-@@-@;
import java.awt.Graphics;
public class HelloWorld extends @-@@-@@-@@-@@-@@-@ {
public void paint(Graphics g) {
g.drawString("Hello world!", 50, 25);
}
}
يجب على كل @-@@-@@-@@-@@-@@-@ ان يعرف على الاقل واحد او اكثر من هذه ال methods (init,start,paint).
لنعود الان الى شرح الكود السابق, لقد ادخلنا ال Graphics الى ال paint method و معنى هذا اننا سنحصل على صورة او نص على شاشة المتصفح.
ان اول argument من Graphics هو drawstring method و الذي سيقوم برسم النص على الشاشة, ال argument الثاني و الثالث هما (x,y) وهو موقع النص, اي الطرف الايسر السفلي من النص.
خامسا:
نتعرف هنا على كيفية تشغيل ال @-@@-@@-@@-@@-@@-@.
نرى في كود صفحة ال html رابط ال @-@@-@@-@@-@@-@@-@ الذي نقوم بادراجه لكي نستطيع تشغيله على المتصفح.
<HTML>
<HEAD>
<TITLE>A Simple Program</TITLE>
</HEAD>
<BODY>
Here is the output of my program:
<@-@@-@@-@@-@@-@@-@ CODE="HelloWorld.class" WIDTH=150 HEIGHT=25>
</@-@@-@@-@@-@@-@@-@>
</BODY>
</HTML>
ان الكود الذي قمنا بادراجه عمله ان يوجه المتصفح الى البحث عن الملف HelloWorld.class في نفس ال folder الذي يحتوي على صفحة ال html و يقوم بتشغيله, فيحتفظ المتصفح بنسخة عن ال class في ذاكرته للاستخدام اللاحق.
ملاحظة: ارجو منكم كتابة الكود بحروفه كما هي دون تعديل لأن لغة الجافا حساسة لحالة الاحرف, مثلا: HelloWorldApp ليست مثل helloworldapp.
كيفية استيراد import لل classes و الحزم packages
كيفية تعريف ال subclass لل @-@@-@@-@@-@@-@@-@
كيفية تنفيذ ال @-@@-@@-@@-@@-@@-@ methods
كيفية تشغيل ال @-@@-@@-@@-@@-@@-@
أولا:
نتعرف هنا على ال @-@@-@@-@@-@@-@@-@, لقد رأينا في دروس سابقة ال @-@@-@@-@@-@@-@@-@ و لكننا نتسائل ما هو. ال @-@@-@@-@@-@@-@@-@ هو برنامج ينفذ مجموعة من الاوامر التي تسمح له بأن يعمل على متصفح يدعم لغة الجافا.
سنرى في المثال اللاحق برنامج @-@@-@@-@@-@@-@@-@
import java.@-@@-@@-@@-@@-@@-@.@-@@-@@-@@-@@-@@-@;
import java.awt.Graphics;
public class HelloWorld extends @-@@-@@-@@-@@-@@-@ {
public void paint(Graphics g) {
g.drawString("Hello world!", 50, 25);
}
}
ثانيا:
نتعرف هنا على كيفية عمل استيراد import لل classes و الحزم packages.
ان اول سطرين في المثال اللاحق هما لاستيراد اثنان من ال classes المستعملات في ال @-@@-@@-@@-@@-@@-@, و هما @-@@-@@-@@-@@-@@-@ و Graphics.
import java.@-@@-@@-@@-@@-@@-@.@-@@-@@-@@-@@-@@-@;
import java.awt.Graphics;
public class HelloWorld extends @-@@-@@-@@-@@-@@-@ {
public void paint(Graphics g) {
g.drawString("Hello world!", 50, 25);
}
}
اذا ابعدنا هذان السطران فأننا نستطيع تشغيل البرنامج و لكن بشرط ان نغير الكود الى هكذا.
public class HelloWorld extends java.@-@@-@@-@@-@@-@@-@.@-@@-@@-@@-@@-@@-@ {
public void paint(java.awt.Graphics g) {
g.drawString("Hello world!", 50, 25);
}
}
كما رأينا, ان عملية استيراد ال @-@@-@@-@@-@@-@@-@ و ال Graphics تمكن البرنامج من الرجوع اليهم بدون ان يكون هناك تعريف لهم في بداية البرنامج. ال java.@-@@-@@-@@-@@-@@-@. و ال java.awt. تخبر المترجم compiler في اي حزمة package يجب ان يبحث عن @-@@-@@-@@-@@-@@-@ و Graphics.
ان كل من java.@-@@-@@-@@-@@-@@-@ و java.awt هما packages, و هما جزء من ال API و الذي يوجد في كل بيئة جافا.
ان ال package (java.@-@@-@@-@@-@@-@@-@) يحتوي على ال classes الضرورية لل @-@@-@@-@@-@@-@@-@.
ان ال package (java.awt) يحتوي على ال classes المستعملة في AWT و التي تستعمل لعمل الواجهة الرسومية لبرامج الجافا GUI.
نتسائل هنا عن الدرس السابق عندما تكلمنا عن ال System class و انه لا يحتاج الى import, السبب هنا ان ال System class هو جزء من حزمة ال java.lang, و كل شيء ضمن هذه الحزمة يستورد اوتوماتيكيا الى كل برنامج جافا.
لقد تكلمنا عن استيراد classes محددة من داخل ال packages, و لكن الان نتكلم عن استيراد ال package كاملة و ليس class بعينه.
import java.@-@@-@@-@@-@@-@@-@.*;
import java.awt.*;
public class HelloWorld extends @-@@-@@-@@-@@-@@-@ {
public void paint(Graphics g) {
g.drawString("Hello world!", 50, 25);
}
}
في لغة الجافا كل class موجود ضمن package, و سوف نتكلم عن كيفية انشاء ال packages في دروس اخرى قادمة.
ثالثا:
نتعرف هنا على كيفية تعريف ال subclass لل @-@@-@@-@@-@@-@@-@.
ان اول سطر عريض bold في المثل اللاحق, يبدأ بتعريف HelloWorld class.
import java.@-@@-@@-@@-@@-@@-@.@-@@-@@-@@-@@-@@-@;
import java.awt.Graphics;
public class HelloWorld extends @-@@-@@-@@-@@-@@-@ {
public void paint(Graphics g) {
g.drawString("Hello world!", 50, 25);
}
}
ان معنى كلمة extends في هذا البرنامج ان HelloWorld هو subclass من ال class الذي يليه @-@@-@@-@@-@@-@@-@.
رابعا:
نتعرف هنا على كيفية تنفيذ ال @-@@-@@-@@-@@-@@-@ methods.
ان السطور العريضة في المثال اللاحق تعرف ال paint method.
import java.@-@@-@@-@@-@@-@@-@.@-@@-@@-@@-@@-@@-@;
import java.awt.Graphics;
public class HelloWorld extends @-@@-@@-@@-@@-@@-@ {
public void paint(Graphics g) {
g.drawString("Hello world!", 50, 25);
}
}
يجب على كل @-@@-@@-@@-@@-@@-@ ان يعرف على الاقل واحد او اكثر من هذه ال methods (init,start,paint).
لنعود الان الى شرح الكود السابق, لقد ادخلنا ال Graphics الى ال paint method و معنى هذا اننا سنحصل على صورة او نص على شاشة المتصفح.
ان اول argument من Graphics هو drawstring method و الذي سيقوم برسم النص على الشاشة, ال argument الثاني و الثالث هما (x,y) وهو موقع النص, اي الطرف الايسر السفلي من النص.
خامسا:
نتعرف هنا على كيفية تشغيل ال @-@@-@@-@@-@@-@@-@.
نرى في كود صفحة ال html رابط ال @-@@-@@-@@-@@-@@-@ الذي نقوم بادراجه لكي نستطيع تشغيله على المتصفح.
<HTML>
<HEAD>
<TITLE>A Simple Program</TITLE>
</HEAD>
<BODY>
Here is the output of my program:
<@-@@-@@-@@-@@-@@-@ CODE="HelloWorld.class" WIDTH=150 HEIGHT=25>
</@-@@-@@-@@-@@-@@-@>
</BODY>
</HTML>
ان الكود الذي قمنا بادراجه عمله ان يوجه المتصفح الى البحث عن الملف HelloWorld.class في نفس ال folder الذي يحتوي على صفحة ال html و يقوم بتشغيله, فيحتفظ المتصفح بنسخة عن ال class في ذاكرته للاستخدام اللاحق.
ملاحظة: ارجو منكم كتابة الكود بحروفه كما هي دون تعديل لأن لغة الجافا حساسة لحالة الاحرف, مثلا: HelloWorldApp ليست مثل helloworldapp.