💻 آخرین فرصت یادگیری برنامه‌نویسی با آفر ویژه قبل از افزایش قیمت در ۵ آذر ماه (🎁 به همراه یک هدیه ارزشمند )
۰ ثانیه
۰ دقیقه
۰ ساعت
۱۰ شایان شهبازی
در مورد کلاس Person
سعید شاهینی حل شده توسط سعید شاهینی

سلام و خسته نباشید.

عذر میخوام فرمودید کلاس Person رو جلسه قبل راجبش صحبت کردید. اما طوری که من دیدم جلسه قبل در مورد سینتکس‌های جاوا بود و فقط تئوری صحبت شد ، کدی نوشته نشد و در این جلسه کلاس Person از قبل ساخته شده. لطفا راهنمایی کنید در کدوم قسمت بوده. ممنون از زحماتتون

سلام 

بله درسته< جلسه قبل> که گفتند ایهام داشت 

 شما جلسه 2 رو برداشت کنید مفاهیم شی گرایی  

اون اولین جلسه ای بود که در مورد شی گرایی گفته  در واقع اولین جلسه از مبحث شی گرایی و کلاس مد نظر شما اونجا معرفی شد 

 

مهرداد ۱۰ آذر ۱۳۹۸، ۰۸:۲۲

ممنون از پاسخ شما.

اما در اون قسمت هم کلاس Person ایجاد نشده. در کل هنوز کدنویسی شروع نشده اما در این قسمت ما کلاس Person رو از قبل داریم. تمامی مباحث تا به اینجا تئوری بوده اند.

شایان شهبازی ۱۰ آذر ۱۳۹۸، ۰۸:۲۶

بله کد زده نشد، اونجا معرفی شد(بنظر خودم همون از کد زدن خیلی مهتره ) 

اما جلسه چهارم ابزار‌های توسعه نرم افزار با جاوا یه پروزه ایجاد شد  

حالا شما در این جلسه می‌توانید  دقیقا مثل همون جلسه(4) که اولین پروژه ایجاد شد پروژه تون رو با همین نام که استاد گزاشتن (JavaBasicSyntax) یا هر نام دیگری ،پروژتون رو ایجاد کنید 

بعد از ایجاد پروزه  دقیقا همون طور که کلاس Student رو ایجاد کردند شما هم می‌تونید به همین طریق کلاس Person را ایجاد کنید و کد‌های استاد رو بنویسید 

    int id;
    String firstName;
    String lastName;
    void printWelcomeMessage() {
        System.out.println("Hello" + firstName + " " + lastName + ", your id is " + id);
    }

 

مهرداد ۱۰ آذر ۱۳۹۸، ۰۹:۱۱

اما توضیحات مربوط به کد‌های خود کلاس Person کجا داده شده؟ بله مفهوم کلی توضیح داده شده اما خط به خط کد‌ها که چرا نوشته شده اند و نقش هرکدام چیست و در کل چه هستند در کدام جلسه هنگام نوشته شدن گفته شده ؟ مثل کلاس Student در این جلسه.

شایان شهبازی ۱۰ آذر ۱۳۹۸، ۱۲:۱۹

برای مثال یک کلاس Person تعریف شده :
دارای سه صفت(attribute)  به نام های
 1. شناسه (id) چون از نوع عددی هست بهش dataType عددیه int داده شد 
2.نام کوچک(firstName) چون از نوع رشته یا حروف الفبا  هست dataType رشته که Stringمی باشد داده شد 
3.نام بزرگ (lastName)چون از نوع رشته یا حروف الفبا  هست dataType رشته که Stringمی باشد داده شد
 و یک رفتار(Method) :
به نام  printWelcomeMessageو چون چیزی رو بر نمی‌گرداند نو بازگشتی, Methodمون  اینجا void می‌باشد و همچنین چون  چیزی به تابع  داده نمی‌شود داخل پرانتز‌های Method چیزی نمی‌نویسیم 
در جاوا برای اینکه  دو چیز رو بهم متصل کنن(Concat) از + استفاده میکنن پس کل رشته‌ها و عددمون به هم متصل و  
برای اینکه خروجی بگیریم از System.out.println استفاده میکنیم 
الان شما دقیقا  کجا رو مشکل دارید یا گنگ بوده ؟  سوالتون رو دقیقا واضح بپرسید که راهنمایی کنند و سوال شما بر طرف بشود
 

مهرداد ۱۰ آذر ۱۳۹۸، ۱۴:۴۱

خیلی متشکرم الان متوجه شدم. فقط یه چیز دیگه که متوجه نشدم کد زیره که اگه بتونین توضیح بدید ممنون میشم :

()Student student=new Student 

چندین بار برای Teacher هم تکرار شد دلیل و منظورش رو متوجه نشدم.

شایان شهبازی ۱۰ آذر ۱۳۹۸، ۱۴:۵۲

سلام وقت بخیر، به دلیل اینکه به اشتباه بخش دوم از سینتکس و قواعد نوشتاری جاوا منتشر نشده بود، در اون جلسه من مثال Person و Student رو پیاده سازی کرده بودم. حتما اون جلسه رو مشاهده بفرمایید

بهترین پاسخ
سعید شاهینی ۱۰ آذر ۱۳۹۸، ۱۴:۵۶

سلام وقت شما هم بخیر استاد عزیز

 بله حس میکردم که یک جلسه جا افتاده باشه ، چون فصلش هنوز کامل نشده بود. ممنون از شما

شایان شهبازی ۱۰ آذر ۱۳۹۸، ۱۵:۱۲

برای اینکه بتونیم به Method‌ها و attribute  های یک کلاس دسترسی داشته باشیم

 باید یک شی(object) یا نمونه(instance)از  کلاس ایجاد کنیم  برای اینکار

اول نام کلاس رو می‌نویسیم و با یه فاصله(space) 
 واسه نمونه یا objectمون یه اسم میزاریم  که اینجا student انتخاب کردن
 برای اینکه اون Instanceمون ایجاد بشه از کلمه کلیدی و رزرو شده new استفاده میکنیم 
 دوباره با یه فاصله نوع Instance مون که از نوع کلاس Student هست رو می‌نویسیم 
بعد برای اینکه   به method‌ها وattr‌های کلاسمون  دسترسی داشته باشیم در جاوا  از نقطه استفاده میکنیم به صورت زیر 
nameObject<dot>nameMethod
or
  nameObject<dot>nameAttr
خداروشکر استاد تکه ی گمشده  و منتشر نشده ، آپلود کردن :-)

مهرداد ۱۰ آذر ۱۳۹۸، ۱۵:۲۰

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

 

شایان شهبازی ۱۰ آذر ۱۳۹۸، ۱۵:۲۲