دوره مقدماتی جاوا
نصب ابزار
آشنایی با پکیج منیجر Chocolatey-
ابزار مدیریت پروژه Maven
-
جاوا چطور کار میکنه؟
-
دانلود و نصب JDK 8
-
معرفی محیط های توسعه جاوا
-
نصب IntelliJ IDEA Community
-
ساخت و اجرای اولین پروژه جاوا
- مفاهیم و اصول برنامهنویسی شیء گراساختار کد در جاوا
-
گفتگوی JVM و compiler، کی مهمتره؟!
-
نوشتن برنامه به کمک تست (TDD)
-
سفری به دنیای شیء گرایی
-
تفاوت بین کلاس و شیء
-
روش Given-When-Then برای نوشتن تست
-
بازی حدس اعداد (Guessing Game)
-
مدیریت حافظه در جاوا: Garbage Collection
-
وراثت (Inheritance)
-
پلیمورفیسم (Polymorphism)
-
متغیرهای خود را بشناسید
-
How Objects Behave
-
Extra-Strength Methods
-
Using the Java Library
-
Better Living in Objectville
-
Serious Polymorphism
-
Life and Death of an Object
-
Numbers Matter
-
Data Structures
-
Lambdas and Streams: What, Not How
-
Risky Behavior
-
A Very Graphic Story
-
Work on Your Swing
-
Saving Objects (and Text)
-
Make a Connection
-
Dealing with Concurrency Issues
کلاس: مثل یه نقشه (Blueprint) میمونه که توضیح میده چطور یه شیء از اون نوع ساخته بشه.
شیء: یه نمونهی واقعی از اون نقشه است.
مثال:
کلاس Animal
میتونه دهها حیوان بسازه که هر کدوم رنگ، نام و اندازهی خودشون رو داشته باشن.
فکر کردن دربارهی اشیاء
هر شیء توی جاوا دو تا چیز مهم داره:
ویژگیها (Instance Variables):
ویژگیها چیزهایی هستن که شیء در مورد خودش میدونه، مثلاً وضعیت یا دادههاش. این ویژگیها میتونن برای هر شیء از یه نوع خاص، مقادیر منحصر به فردی داشته باشن.
متدها (Methods):
متدها چیزهایی هستن که یه شیء میتونه انجام بده. وقتی داری یه کلاس طراحی میکنی، باید فکر کنی که چه دادههایی لازمه و متدهایی که باید روی این دادهها کار کنن چیا هستن.
مثلاً:
ShoppingCart (سبد خرید)
- میدونه: لیست آیتمهایی که داخلشه.
- میتونه: آیتمها رو اضافه کنه، حذف کنه، قیمت کل رو حساب کنه.
Button (دکمه)
- میدونه: رنگش، متنش.
- میتونه: کلیک بشه، متنش تغییر کنه.
Alarm (زنگ هشدار)
- میدونه: چه زمانی باید زنگ بزنه.
- میتونه: زنگ بزنه، خاموش بشه.
مثال: ساخت یه کلاس و شیء توی جاوا
کلاس سگ (Dog):
class Dog {
int size;
String breed;
String name;
void bark() {
System.out.println("hup! hup!");
}
}
اجرای برنامه:
class DogTestDrive {
public static void main(String[] args) {
Dog d = new Dog(); // میسازیم Dog یه شیء از کلاس
d.size = 40; // اندازهشو مشخص میکنیم
d.bark(); // میگیم واق واق کنه
}
}
نکته: نقش اپراتور نقطهای (Dot Operator)
وقتی میخوای به یه ویژگی یا متد شیء دسترسی پیدا کنی، از اپراتور نقطهای (.
) استفاده میکنی.
مثلاً:
d.size = 40; // مقداردهی به ویژگی اندازه
d.bark(); // فراخوانی متد bark