Learn Java
304 subscribers
92 photos
1 video
94 files
84 links
یاد گیری زبان برنامه نویسی جاوا و نکات و مفاهیم
کاربردی ان



@parsa8113
@bardiademon
Download Telegram
۳۴ سال پیش در چنین روزی ریچارد استالمن پروژه GNU رو شروع کردِ، هدف اصلی این پروژه آزادی دسترسی به کد های نرم افزار ها و امکان ویرایش آن بود
ارایه ها
جاوا به زبان ساده ۳۱
int parsa[] = new int[3]

int [0] = 23;
int [1] = 30;
int[2] = 89;

System.out.println(parsa[0];
output:
33

شاید به فارسی بگم راحت تر متوجه شید

int parsa[] = new int [3];

[]= نماد ارایه ها...با این نماد جاوا میفهمه دارید از ارایه ها استفاده میکنید

new = برای تعریف متغیر هست

int= نوع متغیر..میتونهdouble یا هرچیزه دیگه ای باشه

[3] = تعداد ارایه هاتون


int [0] = 23;
int [1] = 30;
int[2] = 89;

اینم سه تا ارایه ها.کامپیوتر از ۰ شروع میکنه برای همین ۲ همون ۳ محسوب میشه

خب این روش برای ارایه ها هست که به درد عمتون میخوره
چرا؟چچون که اگه توی [] صد بزاریم میخوایم صدتا ارایه تعریف کنیم بعد صدتاشو پرینت کنیم؟

خب ما چیکار میکنیم

میایم:
int parsa [] = {2,3,4,7,3,9,95,67};

System.out.println(amir[2]);

output:
4


2 = عدد ۰
3 = عدد اول
4 = عدد دوم
به همین دلیل ۴ رو چاپ کرد چون کامپیوتر از ۰ شروع میکنه

این روش خیلی راحت تر از روش بالایی بود درسته؟
جاوا به زبان ساده 32
اموزش مباحث Gui(گرافیک)

package test.project;
import javax.swing.JOptionPane;
public class Guiplus {
public static void main (String[] args)
{
String firstnumber = JOptionPane.showInputDialog(null, "ENTER‌ FIRST‌‌ INTEGER ", JOptionPane.QUESTION_MESSAGE);
String secondnumber = JOptionPane.showInputDialog(null, "ENTER‌ SECOND INTEGER ", JOptionPane.QUESTION_MESSAGE);
int number1 = Integer.parseInt(firstnumber);
int number2 = Integer.parseInt(secondnumber);
int sum = number1 + number2;
JOptionPane.showMessageDialog(null, "THE‌ SUM IS : " + sum,
"SUM OF TWO INTEGERS", JOptionPane.PLAIN_MESSAGE);

}
}

خب این کلاس چیکار میکنه :

میاد یه ورودی از کاربر میگیره و توی رشته ی firstnumber ذخیر میکنه(پیام ورودی از کلاس JOptionPane. میباشد)

عدد دوم رو هم میگیره و توی رشته ی secondnumber ذخیره میکنه

بعدش میاد این دو رشته رو convert میکنه به int

بعد هم یه int تعریف میکنه که اون دوتا ورودی رو از کاربر گرفته ججمع کنه

بعدشم توی یک JOptionPane. بندازه بیرون


نکات کلیدی :

JOptionPane.showMessageDialog(null, "THE‌ SUM IS : " + sum,
"SUM OF TWO INTEGERS", JOptionPane.PLAIN_MESSAGE);
SUM OF TWO INTEGERS:
title برای کادر JOptionPane هست


null:
هنگامی که کلاس اجرا میشود
وقتی که برنامه ورودی (INPUT) از کاربر میگیره مقدار null رو برگگشت میده و اگه مقداری منفی تایپ کنه یا برو روی cancel کلیک کنه خطای منطقی رخ میده




JOptionPane.showMessageDialog(null, "THE‌ SUM IS : " + sum,
"SUM OF TWO INTEGERS", JOptionPane.PLAIN_MESSAGE);

PLAIN_MESSAGE:

اگه دقت کنید توی JOptionPane های بالاهم ازین متد استفاده کردیم

مثال
QUESTION_MESSAGE
PLAIN_MESSAGE

خب این متد ها برای چی استفاده میشه؟

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

که در این جا بهشون اشاره میکنیم

PLAIN_MESSAGE= کادری که حاوی پیغام است اما فاقد ایکون میباشد

QUESTION_MESSAGE = کادری که حالت پرسشی از کاربر دارد.مکعمولا این کادر نیازمند پاسخ هست

ERROR_MESSAGE: برای نشان خطا به کاربره دیگه

INFORMATION_MESSAGE = هدفش اطلاع رسانی به کاربره

WARNING_MESSAGE = برای هشدار دادن در مورد مسعله ای هست



تبدیل رشته به مقادیر صحیح
STRING to INT

برای انجام محاسبات باید رشته هایی که کاربر وارد کرده به مقادیر صحیح تبدیل شد

int = مقادیر صحیح
String= رشته
متد استاتیک parselnt
مبادرت به تبدیل رشته به صحیح
از کلاس integer
میکند

showMessageDialog
:
برای نشون دادن یک پیغام هست

showInputDialog
l
برای گرفتن ورودی از کاربر استفاده میکنه

شاید سوالتون این باشه که اصلا چرا از اول به جای رشته از int استفاده نکنیم؟

خب ببینید دوستان showInputDialog برو خلاف Scanner فقط میتونه مقدار رشته رو به عنوان ورودی قبول کنه

این حالت برای اکثر کامپونت های GUI صادقه.به لحاظ تکنیکی, کاربر میتونه هرچیزی رو در جعبه متن ورودی تایپ کنه


نکته:
به کادر های نمایش در امده توسط JOptionPane. کادر های modal میگویند.


نتیجه گیری:
کلاس JOptipnPane و اکثر کامپونت های Gui بر خلاف اسکنر فقط مقدار رشته رو قبول میکنند!
جاوا به زبان ساده 33

برابری در رشته ها

وقتی میخواستیم شرط بزاریم که مثلا مقدار صحیحمون برابر فلان بود فلانو نمایش بده

int i = 2;
if (i == 2)
{
System.out.println("عدد برابر دو است");
}

اما برای شرط گذاری برای رشته نمیتونیم اینطوری عمل کنیم

String b = "learnjava";

if (b == learnjava)
{
System.out.println("learnJava");
}

باید از متد equals استفاده کنیم
خب ینی چطوری؟

String C = "learnjava";
if ("learnjava".equals(C))
{
System.out.println("learnjava");
}

نتیجه گیری:
شرط ها و اپراتور ها فقط برای مقادیر عددی مورد استفاده قرار میگیرند و برای برابر رشته ها از متد equals استفاده میشود
چرا متد main در جاوا static میباشد؟

پاسخ: زیرا متدهای استاتیک را می توان بدون نمونه سازی(شی ساختن) از یک کلاس صدا زد. و متد ()main قبل از نمونه (شی) ایجاد شده از یک کلاس صدا زده می شود.
Forwarded from Deleted Account
tokhmmorq.jar
204.7 KB
Forwarded from Deleted Account
tokhmmorq.zip
601 B
Deleted Account
tokhmmorq.zip
سورس بازی تخم مرغ به زبان جاوا:
فایل زیپ و فایل jar
تصویری از محیط بازی |:
به جاوا خوش آمدید..
یکی از پرکاربرد ترین زبان های برنامه نویسی دنیا.عموم مردم در مورد اعمالی که کامپیوتر ها انجام میدهند،آشنایی دارند.با استفاده از این کتاب با دستورهایی اشناخواهید شد که اعمال ویژه ای در یک موضوع خاص انجام میدهند، و کامپیوتر اجرای این دستورات را به عهده دارد.
نرم افزار ،سخت افزار را کنترل میکند.شما با این کتاب برنامه نویسیobject یا همان شی گرا را خواهید اموخت

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

طولی نمیکشد که سیستم استریو و سایر لوازم موجود در خانه شما از طریق تکنولوژی جاوا باهم تشکیل یک شبکه دهند
از اینکه دستگاه های بی سیم مانند تلفن همراه ،پیجر ها از طریق شبکه بی سیم اینترنتی که بر پایه ی نوعی از تکنولوژی جاوا ارتباط برقرار میکنند ،تعجب نکنید

درواقع جاوا کاربرد گسترده ای دارد.

#کاربرد جاوا
بسیاری از افراد بر این باورند که اینده در اختیار ریزپردازنده های هوشمند خواهد بود.
با در نظر گرفتن این مطلب, شرکت sun Mictosystem یک تیم تحقیقاتی با نام کد Green در سال ۱۹۹۰ تاسیس کرد.
نتیجه پروژه که مبتنی بر C و C++ بود توسط james Gosling بنام OAk نامیده شد...
پس از ملاقات افراد تیم Sun در یک کافه محلی در حال بحث در سر نام..جعبه ای حاوی قهوه دیدند که مارک ان JAVA بود و سپس بر سر نام JAVA به توافق رسیدند.

اما پروژه Green با مشکلاتی مواجه شد. بازار قطعات هوشمند مطابق با انچه که شرکت Sun انتظار داشت رشد نکرد.بدتر از ان قرادادی که شرکت Sun بر سر ان رقابت میکرد به یک شرکت دیگر واگذار گردید.از این رو پروژه در وضعیت خطرناک لغو قرار گرفت.از بخت بلند , در سال ۱۹۹۳, گشت و گذار در وب گسترده جهانی (WWW) از محبوبیت بسیار زیادی در بین مردم برخوردار شده بود.بنابراین اهالی Sun بلافاصله متوجه کاربرد جاوا و پتانسیل های ان در ایجاد محتویات دینامیک بر صفحات وب شدند.

شرکت Sun در ماه می ۱۹۹۵ به عرضه تجاری جاوا پرداخت.بلافاصله, جاوا نظر بسیاری از مراکز تجاری را بخود جلب کرد, چرا که علاقه ی عجیبی نسبت به وب گسترده ی جهانی در مردم ایجاد شده بود.

هم اکنون از جاوا برای ایجاد صفحات وب با قابلیت دینامیکی و تعاملی, توسعه برنامه های کاربردی در مقیاس گستره, اپلیکیشن های موبایل, تکنولوژی کارت های بانکی مبتنی بر جاوا و همچنین هوش مصصنوعی استفاده میشود
بهترین زبان های برنامه نویسی از نظر حقوق سالانه و فرصت های شغلی در جهان
مفاهیم
مفهومLiteral چیست؟!
مقداری است که ممکن است به یک متغیر اولیه یا رشته (String) اختصاص داده شود همچنین به عنوان یک پارامتر یا آرگونان به متر منتقل شود

مفهوم Unicode چیست؟؛
جاوا از Unicode برای نشان دادن کاراکتر ها استفاده می کند.
یونیکد یک مجموعه کاراکتر های کامالا بین المللی را تعریف میکند که میتواند تمام کاراکتر های موجود در زبان انسانی را نشان دهد.

منظور از Type casting در جاوا چیست؟!
برای ایحاد تبدبل بین دو نوع ناسازگار، باید ازcasting استفاده کنیم
دو نوع casting عبارت اند از:
Casting خودکار
Casting صریح

خودک ار به صورت خودکار و بدون دخالت برنامه نویس و صیح مخالف خودکار است
ارایه چیست؟!
ارایه یک گروه تعداد ثابتی از مقادیر هم نوع میباشد

متد substring () چیست؟!
برای بدست اوردن زیر رشته ای از یک رشته مشخص در جاوا استفاده میشود

ایا جاوا مستقل از پلتفرم است؟!
بله.جاوا یک زبان مستقل است. ما میتوانیم کدهای جاوا را در یک پلتفرم بنویسیم و ان را در پلتفرمی دیگر اجراکنیم. برای مثال ما میتوانیم کدهای خودمون را در ویندوز نوشته و در لینوکس اجرا کنیم

تفاوت جاوا با سی پلاس پلاس در چیست؟
1_ساده بودن (simple)
2_چند نخی (multi threaded)
3_برنامه های توزیع شده
4_تنومند بودن
5_ امنیت بالا
6_حذف پیچیدگی های سی پلاس پلاس مثل اشاره گر ، وراثت و...

کلاس چییست؟!
کلاس چیزی جز یک الگو نیست که داده ها ورفتارهای مربوط به نمونه های آن کلاس را توصیف می کند
جاوا به زبان ساده 34

عبارت تکرار do...while

عملکرد عبارت do...while همانند عبارت while است. در عبارت while , شرط تکرار حلقه در ابتدای حلقه تست میشود
قبل ازینکه بدنه در حلقه به اجرا در اید.

اما عبارت do...while شرط را پس از اجرای حلقه تست میکند

درواقع یکبار حلقه رو اجرا میکنه بعد نگاه میکنه به شرطا
ولی while خالی اول نگاه میکنه به شرطا اگه برقرار بود اجرا میکنه

به مثال های زیر توجه کنید :

public class DoWhileTest
{
public static void main
{
int counter = 1;
do {
System.out.printf("%d ", counter);
++counter;
}

while (counter<=10)
System.out.println();
}
}

output :
1 2 3 4 5 6 7 8 9 10

در این برنامه برای چاپ مقادیر یک تا ده از do...while استفاده شد

در اولین برخورد برنامه با این عبارت , مقدار متغیر counter(با مقدار ۱)
چاپ شده, سپس counter یک واحد افزایش میابد. سپس با عبارت while ارزش یابی شده و برنامه در میابد که counter کوچک تر یا مساوی ده نشده وسپس do..while از اول اجرا شده و این روند ادامه خواهد یافت تا مقدار counter به ده برسد

توجه :
++counter
همان
counter++
است