برای بیان مطالب و برنامه های در خواستییتان روی اينجا كليك كنيد زیر کلیک کنید

با عضويت در اين وبلاگ
ميتوانيد به خفن ترين بخش ان دست يابيد
همچنين ميتوانيد عكسهاي نويسندگان وبلاگ را مشاهده كنيد![]()
براي تبادل لينک ابتدا لينک مارو بانام:یه دختر کله شق+متفکر - اموزش ساخت صفحات وب (HTML) از درس 21 تا 30 در
وبلاگ ياسايتتان قراردهيد ،
سپس از طریق فرم نظرات به ما خبر دهيد تاما هم اين کار رو براي شما بکنيم.
برای افزایش بازدید وبلاگتان در لینک باکس ما ثبت نام کنید
برای ثبت لینکتان در لینک باکس ما روی اینجاکلیک کنید
اسم:ساناز
سن:16
محل سكونت:تهران(نارمك)
<<خيلي دوستون دارم و از اينكه اومدين تو وبلاگ خوشحالم ضمنا حتما حتما نظر بديدا >>
![]()
دانلود
نرم افزارچت و مسنجر
نرم افزار فشرده ساز
نرم افزار طراحي
نرم افزار اينترنت
فونت و آيكون
ابزار فتوشاپ
نرم افزار كاربردي
نرم افزار جالب
دانلود اهنگ و رپ
دانلود كتاب هاي الكترونيكي
ديگر موارد
موبايل
ابزار سوني اريكسون
ابزارنوكيا
ابزار موتورالا
ابزار ديگر موبايلها
ابزار مشترك گوشي ها
انواع تم براي همه ي گوشي ها
بازي انواع موبايل
آنتي ويروس براي انواع موبايل
فارسي ساز انواع موبايل
كدهاي مخفي انواع موبايل
كليپ موبايل
ديگـر موارد
آموزش
آموزش كامپيوتر
آموزش وبلاگ نويسي
آموزش هك و امنـيت
آموزش فتو شاب
آموزشهايي در مورد بيت سازي
آموزشهايي در مورد رپ خوندن
ديگر موارد
طنزو سرگرمي
جك و پيامك
شعر هاي عاشقانه
مطالب خنده دار راجب دخترها
مطالبي خنده دار در مورد پسرها
نامه ها و نوشته هاي خنده دار
معرفي بهتري سايتها و وبلاگها
ديگر موارد
وب
كدهـاي جاوا اسكريپت
آموزش كدهاي جاوا اسكريپت
آموزش ساخت صفحات وب
قالب ويلاگ
آموزش ساخت بنر و فلش
ديگر موارد
ترفندستان
ترفندهاي ياهو مسنجر
ترفندهاي ويندوز
ترفندهاي رجيستري
ترفندهاي نت پد
ترفندهاي موبايل
ترفندهاي موتور جستجو
ديگر موارد
متفرقه
اخبار وبلاگ
تبادل لينك و تبليغات
راه هاي كسب در آمد اينترنتي
پاسخ به سوالات شما
ديگر موارد
.:: محصولات آماده ي فروش وبلاگ::.
درس بیست یکم
متدهای مشابه با آرگومانهای مختلف
با ارسال آرگومان به یک متد ، می توان عملکرد آن را تحت قرار داد.متدهای مختلف در یک کلاس می توانند دارای اسامی مختلف باشند، لیکن امکان اینکه چند متد دارای نام یکسان باشند نیز وجود دارد ، به شرط اینکه آرگومانهای آنها متفاوت باشد .
دو متد می توانند دارای اسامی یکسان باشند، به این شرط که تعداد آرگومانهای آنها مختلف بوده و یا نوع برخی از آرگومانهای آنها فرق داشته باشد.
برای مثال، کلاس Virus می تواند دارای دو متد tauntUser() (به معنای طعنه زدن به کاربر) باشد که یکی از آنها آرگومانی نگرفته باشد و یک طعنه عمومی را نمایش دهد و دیگری متن طعنه را به صورت یک آرگومان از نوع رشته دریافت کند. مانند زیر:
Void tauntUser() {
System.out.println(“the problem is not with your set,but”+”with yourselves.”);
}
void tauntUser(string taunt) {
system.out.println(taunt);
}
درس بیست دوم
متدهای سازنده
برای ایجاد یک شیء در برنامه، از جمله new استفاده می شود، مانند زیر:
Virus typhoid=new virus( );
این جمله، یک شیء virus جدید به نام typhoid ایجاد می کند. وقتی از جمله newاستفاده می کنید، متد خاصی از کلاس آن شیء فراخوانی می شود. این متد سازنده (constructor) نامیده می شود، چرا که عملیات مربوط به ایجاد شیء را انجام می دهد .هدف اصلی از وجود سازنده، مقداردهی کلیه متغیرهایی است که برای کارکرد صحیح شیء ، مورد نیاز می باشند .
متدهای سازنده ، مانند سایر متدها تعریف می شوند، با این تفاوت که قادر به بازگرداندن مقدار نمی باشند. در زیر دو متد سازنده برای کلاس virus را مشاهده می کنید:
Public virus() {
author=”Ignoto”;
maxFileSize=30000;
}
public virus(string name,int size) {
author=name;
maxFileSize=size;
}
با استفاده از آرگومانهای مختلف ، می توان برای یک کلاس، چندین سازنده تعریف کرد. در مثال بالا ، سازنده اول وقتی فراخوانی می شود که یک جمله new مانند زیر به کار رفته باشد:
Virus mumps=new virus();
سازنده دیگر در صورتی فراخوانده خواهد شد که در جمله new از یک رشته و یک عدد صحیح به عنوان آرگومان استفاده شده باشد، مانند :
Virus rubella=new virus(“April Mayhem”,60000);
اگر برای یک کلاس هیچ متد سازنده ای تعریف نکنید، این کلاس ، سازنده ای از کلاس ارشد خود که هیچ آرگومانی نمی گیرد، به ارث خواهد برد. در ضمن ، بسته به کلاس ارشد به کار رفته، کلاس فوق ممکن است متدهای سازنده دیگری را نیز به ارث ببرد.
هر کلاسی باید دارای یک متد سازنده باشد که تعداد و نوع آرگومانهای آن با آنچه در جمله new مربوط به ایجاد اشیای آن کلاس به کار رفته ، یکسان باشد.
مثلاً برای ایجاد اشیای از نوع virus که دارای دو سازنده به صورت virus() و virus(string name,int size) می باشد، تنها می توان از دو نوع جمله new استفاده کرد : یکی بدون آرگومان و دیگری دارای دو آرگومان که اولی از نوع رشته و دومی از نوع عدد صحیح می باشد .
درس بیست سوم
متدهای کلاس
متدهای کلاس نیز مانند متغیرهای کلاس، روشی هستند برای ایجاد کارکردهایی که با کل یک کلاس در ارتباطند، نه با شیء خاص از آن کلاس.
اگر متدی یک شیء خاص از کلاس را تحت تاثیر قرار ندهد، باید به صورت متد کلاس تعریف شود .مانند متد parseInt() از کلاس Integer . این متد برای تبدیل یک رشته به متغییری از نوع int به کار می رود مانند:
Int time=integer.parsInt(timetext);
برای تبدیل یک متد به متد کلاس، قبل از نام آن از static استفاده کنید ، مانند زیر :
Static void showVirusCount() {
System.out.println(“there are”+virusCount+”viruses.”);
}
متد showVirusCount( ) یک متد کلاس است که مقدار این متغییر را نمایش می دهد و باید آن را توسط جمله ای به صورت زیر فراخوانی کنید:
Virus. showVirusCount( );
درس بیست چهارم
حوزه دید متغیرها درون یک متد
وقتی یک متغیر یا شیء را درون یکی از متدهای یک کلاس ایجاد می کنید، فقط درون همان متد می توانید از آن استفاده کنید. علت این امر، مفهومی است به نام حوزه دید متغیر (variable scope) .
حوزه دید ، بخشی از برنامه است که یک متغیر در آن وجود دارد. با خروج از این بخش ، دیگر نمی توان از آن متغییر استفاده کرد.
محدوده یک متغیر در برنامه با علائم { و } تعریف می شود. متغیری که بین این دو علامت ایجاد شده ، خارج از آنها نمی تواند مورد استفاده قرار گیرد .برای مثال جملات زیر را در نظر بگیرید:
If (numfile<1) {
String warning=”no files remaining.”;
}
system.out.println(warning);
این مثال عملکرد صحیحی نخواهد داشت، چرا که متغیر warning درون آکلادهای مربوط به جمله بلوک if تعریف شده است که حوزه دید آن را مشخص می سازند. این متغیر خارج از آکلادها وجود ندارد و لذا متد system.out.println( ) نمی تواند از آن به عنوان یک آرگومان استفاده کند.
درس بیست پنجم
قرار دادن یک کلاس درون کلاس دیگر
اگر چه هر برنامه جاوا معمولاً به عنوان یک کلاس در نظر گرفته می شود، در بسیاری از موارد ، یک برنامه ممکن است برای انجام کار خود به بیش از یک کلاس احتیاج داشته باشد. برنامه های جند کلاسه (multiclass) از یک کلاس اصلی و چندین کلاس کمکی (helper class) تشکیل می یابند.
به عنوان مثال می توان یک اپلت جاوا را در نظر گرفت که در بخشی از رابط کاربر گرافیکی خود، عنوان متحرکی را نمایش می دهد.
برای تعریف کلاسهای کمکی در برنامه ای که به چندین کلاس تقسیم شده است، دو روش وجود دارد ، روش اول آن است که هر کلاس به صورا جداگانه تعریف می شود، مانند:
Public class wreakHavoc {
String author=”Ignoto”;
Public void infectfile( ) {
virusCode vic=new virusCode(1024);
}
}
class virusCode {
int vsize;
virusCode(int size) {
vsize=size;
}
}
در این مثال virusCode به عنوان یک کلاس کمکی برای wreakHavoc به کار رفته است . کلاسهای کمکی اغلب در همان فایل مبدا .java که کلاس اصلی در آن واقع است ، تعریف می شوند. با کامپایل کردن این فایل مبدا، چندین فایل کلاس تولید خواهد شد .
روش دیگر برای تعریف کلاسهای کمکی آن است که آنها را درون کلاس اصلی قرار دهیم . در این حالت، کلاس کمکی یک کلاس درونی (inner class) نامیده می شود.
کلاس درونی ، بین آکلاد باز و بسته یک کلاس دیگر تعریف می شود، مانند:
Public class wreakMoreHavoc {
String author=”Ignoto”;
Public void infectFile( ) {
virusCode vic=new virusCode(1024);
}
class virusCode {
int vsize;
virusCode(int size) {
vsize=size;
}
}
}
کلاسهای درونی را می توان مشابه سایر کلاسهای کمکی مورد استفاده قرار داد. تنها اختلاف آن است که کلاسهای درونی پس از کامپایل شدن، نام جدیدی دریافت می کنند که شامل نام کلاس اصلی آنها نیز می باشد
درس بیست ششم
استفاده از کلمه کلیدی this
با توجه به اینکه درون یک کلاس می توان به متغییرها ومتدهای همان کلاس و کلاسهای دیگر رجوع کرد، در برخی شرایط متغیری که به آن رجوع می شود، ممکن است باعث ابهام وسردرگمی شود. یک روش برای کاستن از این گونه ابهامات ، استفاده از جمله this می باشد. با استفاده از این جمله، یک برنامه می تواند به شیء مربوط به خود رجوع کند.
هنگام استفاده از متدها یا متغیرهای یک شیء شما نام آن شیء را همراه بایک علامت نقطه، پیش از نام متد یا متغیر قرار می دهید.
مثال:
Virus chichenpox=new Virus( );
Chichenpox.name=”LoveHandles”;
Chichenpox.setSeconds(75);
جملات فوق یک شیء جدید Virus به نام chickenpox ایجاد کرده ، متغیر name از chickenpox را مقداردهی می کنند و سپس متد setSeconds( ) از chickenpox را فرامی خوانند .
گاهی در یک برنامه لازم است که به شیء جاری یا به عبارت دیگر، به شیء مربوط به خود برنامه رجوع کنید.
برای مثال ، درون کلاس Virus ممکن است متدی داشته باشیم که دارای متغیری به نام author باشد :
Void public checkAuthor( ) {
String athor=null;
}
متغیر author فقط در حوزه دید متد checkAuthor( ) وجود دارد و با متغیر شیء author متفاوت است . اگر بخواهید درون این متد به متغیر author از شیء جاری رجوع کنید، ناچار به استفاده از جمله this خواهید بود :
system.out.println(this.author);
با استفاده از this مشخص می کنید که به کدام متغیر یا متد رجوع کرده اید هر جایی از یک کلاس که امکان رجوع به یک شیء توسط نام آن وجود داشته باشد، می توانید از this استفاده کنید . می توانید از جمله به شکل زیر استفاده کنید :
verifyData(this);
درس بیست هفتم
به ارث بردن رفتارها و خصوصیات
رفتارها و خصوصیات هر کلاس ، ترکیبی هستند از دو چیز : رفتارها و خصوصیات خود آن کلاس و رفتارها و خصوصیاتی که از کلاسهای ارشد خود به ارث می برد.
برخی از رفتارها و خصوصیات Applet از این قرارند:
متدequals( ) معین می کند که آیا شیء Applet دارای مقداری برابر با شیء دیگر هست یا نه .
متد setBackground( ) رنگ زمینه پنجره اپلت را تنظیم می کند .
متد add( ) برای افزودن عناصر رابط کاربر از قبیل دکمه ها و فیلدهای متنی به اپلت به کار می رود.
متد showStatus( ) سطری از متن را درون نوار وضعیت مرورگر وب نمایش می دهد.
کلاس Applet می تواند از کلیه این متدها استفاده کند، گرچه تنها متدی که از کلاسهای دیگر به ارث نبرده showStatus( ) است . متد equals( ) در Object ، متد SetBackground( ) در Component( ) و متد add( ) در Container تعریف شده است .
درس بیست هشتم
دوباره نویسی متدها
برخی از متدهای تعریف شده در کلاس Applet، در یکی از کلاسهای ارشد آن نیز تعریف شده اند. مثلاً متد resize( ) هم در کلاس Applet وهم در کلاس Component تعریف شده است . این متد برای تغییر اندازه یک عنصر روی یک رابط کاربر گرافیکی به کار می رود. اگر متدی هم در زیرکلاس و هم در کلاس ارشد آن تعریف شده باشد، متد تعریف شده در زیرکلاس، مورد استفاده قرار می گیرد. این امر ، زیرکلاس را قادر می سازد که برخی از رفتارها و خصوصیات کلاسهای ارشد خود را تغییر دهد، جایگزین کند و یا به کلی از بین ببرد.
ایجاد یک متد جدید در یک زیر کلاس، به منظور تغییر رفتار به ارث برده شده از یک کلاس ارشد را دوباره نویسی (overriding) متد می نامند. در مواردی که رفتار به ارث برده شده، ممکن است منجر به نتایج نامطلوب شود، باید متد مربوطه را دوباره نویسی کنید.
درس بیست نهم
برقراری ارث بری
برای قرار دادن یک کلاس به عنوان زیرکلاس کلاسی دیگر، از جمله extends استفاده می کنیم. مانند :
Class Animatedlogo extends java.applet.JApplet {
// behavior and attributes go here
}
در اینجا جمله extends ،کلاس AnimatedLogo را به عنوان زیر کلاس Japplet قرار می دهد. کلیه اپلتهای جاوا 2 باید زیرکلاسی از Japplet باشند، چرا که برای اجرا روی وب جهانی به کارکرد این کلاس نیازمندند.
برای دوباره نویسی یک متد، باید آن را به همان شکلی که در کلاس ارشد مربوطه آغاز می گردد، آغاز کنید . یک متد public بایدpublic باقی بماند، مقدار بازگردانده شده توسط متد باید یکسان باشد و تعداد و نوع آرگومانهای ارسالی به متد نیز نباید تغییر یابد.
درس سی ام
استفاده از this و super در یک زیر کلاس
دو کلمه کلیدی بسیار مفید جهت استفاده در زیرکلاسها عبارتند از this و super . کلمه کلیدی this برای رجوع به شی ء جاری به کار می رود .هنگامی که کلاسی ایجاد می کنید و ناچار به رجوع به شی ء خاصی از این کلاس هستید می توانید از this استفاده کنید ، مانند جمله زیر :
This.title=”Cagney”;
این جمله متغییر title از این شی ء را برابر Cagney قرار می دهد.
کلمه کلیدی super نیز کاربرد مشابهی دارد و به کلاس ارشد مستقیم آن شی ء رجوع می نماید. Super را می توان به چندین روش مورد استفاده قرار داد :
برای رجوع به یک متد سازنده از کلاس ارشد ، مانند super(“Adam”,12) .
برای رجوع به متغییری از کلاس ارشد، مانند super.Hawaii=50 .
برای رجوع به یک متد از کلاس ارشد ، مانند super.dragNet() .
یکی از کاربردهای کلمه کلیدی super در متد سازنده ، مربوط به یک زیر کلاس می باشد . از آنجایی که هر زیرکلاس کلیه رفتارها و خصوصیات کلاس ارشد خود را به ارث می برد ، شما باید هر متد سازنده از زیر کلاس را با یک متد سازنده از کلاس ارشد آن همراه کنید . در غیر اینصورت برخی از رفتارها و خصوصیات به درستی تنظیم نخواهد شد و زیر کلاس عملکرد صحیحی نخواهد داشت .
جهت حصول اطمینان از فراخوانی متد سازنده کلاس ارشد ، باید این متد را در اولین جمله از سازنه زیر کلاس فرا خوانی کنید و برای این منظور باید از کلمه کلیدی super استفاده کنید ، مانند جملات زیر :
Publiv ReadFile(String name,int length){
Super(name,length);
}
مثال فوق ، متد سازنده ای است از یک زیر کلاس که با استفاده از super(name,lenth) متد سازنده متناظر از ارشد خود را فرا می خواند.
[+]
نوشته شده توسط (ساناز) در 23:53
|
|