آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

آموزش موارد تا حدودی پیشرفته جاوا

aliakbar333  11 سال پیش  11 سال پیش
+28 0

باسلام

سعی من در این تاپیک ایجاد یک صفحه جهت مرور و یادآوری مطالب و مفاهیم فراگرفته در برنامه نویسی جاوا می باشد که می تواند برای دوستان مفید باشد .

در این تاپیک فرض بر این شده که همه با اصول اولیه برنامه نویسی آشنایی دارند.

لازم به ذکر می باشد که این اصول اولیه در تمام زبان های برنامه نویسی قابل استفاده است.

 

اشیا و کلاس ها

همونطور که میدونیم جاوا یه زبان شی گرا بوده و نه تنها به انواع اصلی خود متکی است بلکه روی اشیا نیز تمرکز دارد.

تعریف شی : یک شی ترکیبی از داده ها و توابع برای انجام یه سری کار روی اونهاست.

تعریف کلاس (Class ) : یک کلاس فیلد ها (داده ها) و متد ها(توابع) را تعریف می کند که یک شی را ایجاد می کند.

یک نوع خاص از شی یعنی یک کلاس است

در جاوا مشابه با هر زبان شی گرای دیگر اشیا ممکن است از انواع دیگر ارث ببرند . یک کلاس که از یک کلاس دیگر ارث می برد و یک زیر نوع (subtype)  یا زیر کلاس (subclass) از پدر خود است . کلاس پدر نیز یک سوپر نوع (supertype )  یا سوپر کلاس (superclass) فرزند خود است کلاسی که دارای چندزیر کلاس است بعضی وقت ها نوع پایه آن زیر کلاس ها نامیده می شود .

هم متد ها و هم فیلد ها دارای قلمرو جهانی درون کلاس بوده و ممکن است از خارج شی که ارجاعی به یک نمونه از کلاس است قابل دسترسی باشند .

نمونه یک کلاس بسیار بسیار ساده با یک فیلد (ctr)   و یک متد (incr) :

 public class Trivial{
/* a field :its scope is the entire class */
private long ctr ;
/* Modify the field */
public void incr(){ctr++}
}
 برای این سوال 5 پاسخ وجود دارد.
پاسخ به سوال 
aliakbar333  11 سال پیش
+2 0

ایجاد شی

یک شی جدید یک نمونه از یک کلاس است و با استفاده از کلمه کلیدی new  ایجاد می شود :

 Trivial trivial = new Trivial();

در سمت چپ عملگر انتساب (یعنی=) یک متغیر با نام trivial  تعریف می شود .

این متغیر دارای نوع Trivial  است که یک کلاس می باشد و بنابراین تنها اشیا از نوع Trivial را می توان به آن نسبت داد .

در سمت راست عملگر انتساب حافظه برای یک نمونه جدید از کلاس  Trivial اختصاص داده شده و نمونه ای از آن ایجاد می شود.

عملگر انتساب یک ارجاع به شی جدید ایجاد شده را به متغیر می دهد.

 با اینکه متغیر ctr در کلاس Trivial به صورت صحیح مقدار دهی نشده اما مشکلی ایجاد نمی شود زیرا جاوا مقدار صفر را به آن می دهد .

جاوا تضمین می کند که همه فیلد ها (فیلد های شی) به صورت خودکار در زمان ایجاد شی مقدار دریافت کنند:

یک boolean مقدار اولیه false 

یک نوع اصلی مقدار عددی 0

تمام انواع اشیا (شامل string) مقدار اولیه null

دریافت می کنند.

 نکته : متغیر های محلی که به صورت عادی ایجاد می شوند قبل از استفاده شدن باید مقدار اولیه دریافت کنند.

 

پاسخ به سوال 
aliakbar333  11 سال پیش
+1 0

در شی گرایی هر شی(object) از یک الگو به نام کلاس (class)درست می شود و شامل دو جز اصلی اعضا(members) و متدها(methods) می باشد در واقع در زبان های برنامه سازی شی گرا شما با الگو ها سر وکار دارید .

یک شی هنگامی که از یک متد درست می شود تمامی اعضا و متدهای آن را به طور کامل دریافت می کند

تعریف اعضا = متغیرهایی هستند که در سراسر کلاس قابل دستیاب هستند

تعریف متدها = قطعه کد هایی که بسیار شبیه به تابع هستند و عملیاتی را برای اعضا کلاس با دیگر متغیرها انجام می دهند

پاسخ به سوال 
aliakbar333  11 سال پیش
+4 0

با اضافه کردن یک constructor (سازنده ) به تعریف کلاس می توانیم کنترل بیشتری روی چگونگی ایجاد شی از کلاسش داشته باشیم .

یک constructor (سازنده ) همانند یک متد عادی ایجاد می شود ولی هیچ نوع برگشتی برای آن ایجاد نمی شود.

نام یک constructor (سازنده ) دقیقا مشابه نام کلاس است 

 public class lessTrivial {
/* a fiald : its scape is the entire class */
private long ctr ;

/* Constructor : initialize the fields */
public LessTrivial(Long initCtr) {ctr=initCtr;}

/* Modify the field */
public void incr(){ctr+;}
}

در جاوا هر کلاس دارای یک Constructor  است. و اگر هیچ Constructor برای کلاس تعریف نشده باشد کامپایلر جاوا به صورت خودکار یک Constructor ایجاد می کند.

0 0
سلام عملگر (.) نقطه برای چه کاری استفاده می شه؟ (11 سال پیش)
0 0
متد onCreat دقیقا به چه کاری میاد؟کجا ازش استفاده می شه ؟ (11 سال پیش)
0 0
به طور کلی در متد oncreat شما فعالیت ها رو مقدار دهی اولیه میکنی و این متد زمانی که برنامه هنوز لود نشده به اجرا در میاد و از این متد برای شروع برنامه و نرم افزار استفاده میشه. (11 سال پیش)
پاسخ به سوال 
aliakbar333  11 سال پیش
0 0

چند نکته جهت یادآوری ( این پست ممکنه به مرور بروزرسانی بشه ) :

نکته اول : عملگرها در جاوا  >>  لینک

نکته دوم : عملگرها در جاوااسکریپت >> جهت افزایش معلومات  >>  لینک

نکته سوم : آشنایی با جاوا اسکریپت

اگر کمی با دنیای وب آشنایی داشته باشید حتما در مورد جاوا اسکریپت شنیده اید و هرگاه در مورد حرکات عجیب و غریب بعضی از سایت ها از دوستان پرسیده اید آنها را به جاوا اسکریپت نسبت داده اند. حرکاتی مانند حرکت یک عکس یا متن بدنبال موس ، لرزیدن صفحه هنگام ورود به یک وبلاگ ، منوهای پایین افتادنی در سایت ها و ...

اما جاوا اسکریپت چیست؟
جاوا اسکریپت زبانی است که در صفحات html کاربرد دارد و قابلیتهای بسیاری از قبیل : افزایش کیفیت طراحی صفحات , کنترل صفحات ، کنترل browser بازدید کننده ، ساخت و استفاده cookie ها و بسیاری چیزهای دیگر.

اطلاعات پیش نیاز چیست؟
فقط HTML  /XHTML ، البته کمی هم دید برنامه نویسی لازم است .اما ما تمامی مبانی آنرا به شما آموزش میدهیم و شما احتیاجی به دانستن زبان برنامه نویسی جداگانه ندارید ولی کمی دید برنامه نویسی لازم است.

JavaScript یک زبان برنامه نویسی اسکریپتی است که کدهای آن بسیار شبیه به زبان C است . زبان جاوا اسکریپت به حروف بزرگ و کوچک حساس میباشد. زبان JavaScript یک زبان برنامه نویسی "شی گرا" میباشد. از آنجا که JavaScript یک متن ساده میباشد، در نتیجه میتوان از هر ویرایشگر متن کمک گرفت، در سیستم ویندوز اغلب کاربران از برنامه notepad استفاده میکنند.

تفاوت جاوا و جاوا اسکریپت :
برخلاف شباهت اسمی موجود برنامه Java و JavaScript، هیچگونه شباهتی بین این دو برنامه وجود ندارد. Java یک زبان برنامه نویسی بسیار کامل و پیشرفته ای است که توسط شرکت sun microsystem تهیه شده و جاوا اسکریپت توسط شرکت netscape.( اساس Java در برنامه های client-side برای ایجاد appletها میباشد، این برنامه های کوچک توسط شبکه اینترنت دریافت شده و درون خود browserها اجرا میشوند بطوریکه بعلت وجود قابلیت همه گیر Java، این برنامه در تمامی browserهایی که قابلیت اجرای Java را دارند، کار میکنند


مزایای جاوا اسکریپت :
جاوا اسکریپت بر خلاف vbscript در همه browser ها قابل استفاده و خوانده شدن است.
جاوا اسکریپت قابلیت برنامه نویسی را به صفحات HTML شما میدهد.
جاوا اسکریپت صفحات HTML شما را پویا میکند.
جاوا اسکریپت به رویدادها پاسخ میدهد ( مثل کلیک موس،load شدن صفحه و ...)
جاوا اسکریپت قابلیت ارزیابی و تغییر روی اطلاعات را دارد.
جاوا اسکریپت قابلیتهای زیادی در کنترل browser بیننده دارد.
جاوا اسکریپت میتواند cookie بسازد و استفاده کند


زبان برنامه نویسی جاوااسکریپت یک زبان برنامه نویسی کاملا مفسری است و فرایند کامپایل ندارد و مستقیما توسط مفسر زبان جاوااسکریپت (که معمولا درون مرورگر وب قرار دارد) اجرا می شود اما زبان برنامه نویسی جاوا یک زبان کامپایلری و مفسری است، بدین معنی که ابتدا در یک مرحله به کد زبان میانی یا byte code کامپایل می شود و سپس این byte code توسط ماشین مجازی جاوا اجرا می شود.

زبان های برنامه نویسی جاوا و جاوااسکریپت تفاوت های دیگری نیز دارند:
    جاوا یک زبان static type است در حالی که جاوااسکریپت یک زبان dynamic است.
    برنامه های جاوا بر پایه class هستند ولی برنامه های جاوااسکریپت بر پایه مفهوم prototype.
    و ...

 

 

پاسخ به سوال 
aliakbar333  11 سال پیش
0 0

کلاس Object و متد های آن

کلاس object جاوا را میتوان جد اصلی همه کلاس ها معرفی کرد .

هر شی جاوا به نوعی یک object است

متد های wait  - notify - notifyAll  در کلاس object قسمتی از پشتیبانی همزمانی جاوا هستند

متد tostring یه نمایش متنی از شی رو مشخص میکنه . که یکی از کاربردهای جالب این متد وصل شدن رشته هاست. به گونه ای که هر شی میتونه به یه رشته وصل بشه.

 


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .