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



@parsa8113
@bardiademon
Download Telegram
چرا متد 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++
است
j2ewiz.exe
7.1 MB
گرفتن خروجی exe از فایل های جاوا
(jar file)
در این آموزش یاد می گیریم که چگونه می توان در زبان جاوا آبجکت ها را به سادگی در فایل نوشت و از فایل خواند. در این آموزش با دو کلاس فوق العاده مفید و کاربردی ObjectInputStream و ObjectOutputStream آشنا می شویم.

به جای شرح تئوری سعی می کنم در طی چند مثال شما را با ذخیره سازی آبجکت در فایل آشنا کنم.

اگر بخواهیم انواع داده اولیه مانند int ، float یا double یا ... را در فایل به صورت آبجکتی ذخیره کنیم باید از کلاس های متناظر با آن ها استفاده کنیم ، به عنوان مثال برای ذخیره سازی نوع داده ای از نوع int در فایل به صورت آبجکتی باید از Integer استفاده کنیم.

اشیا را باید به همان ترتیبی که در فایل می نویسیم از فایل بخوانیم. در مثال زیر ابتدا رشته name و سپس عدد score به صورت آبجکتی در فایل ذخیره می شوند. برای خواندن از فایل نیز ابتدا باید مقدار متناظر با name را از فایل بخوانیم و سپس مقدار متناظر با score . اشیا خوانده شده از فایل به صورت Object هستند و خودمان باید آن ها را cast کنیم.


import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;



public class ObjectFileExample {

public ObjectFileExample() throws Exception {

File mFile=new File("myfile.sfc");

/* Write Objects To File */
FileOutputStream fos=new FileOutputStream(mFile);

ObjectOutputStream oos=new ObjectOutputStream(fos);

String name="Parsa";
Integer score=20;

oos.writeObject(name);
oos.writeObject(score);

oos.close();
fos.close();

/* Read Objects From File */
FileInputStream fis=new FileInputStream(mFile);

ObjectInputStream ois=new ObjectInputStream(fis);

String nameInFile=(String)ois.readObject();
Integer scoreInFile=(Integer)ois.readObject();

System.out.println(nameInFile+" , "+scoreInFile);

ois.close();
}
public static void main(String[] args) {
try {
new ObjectFileExample();
} catch (Exception e) {
e.printStackTrace();
}
}
}


خروجی برنامه به صورت زیر خواهد بود :

Parsa , 20
در JDK‌ جاوا دو راه حل برای کار با فایل های XML قرار داده شده است. یکی DOM و دیگری SAX‌ . البته راه های دیگری نیز وجود دارد.

شاید بتوان گفت که DOM ساده ترین روش کار با فایل های XML است. DOM Parser کل سند XML‌ را خوانده و آن را به صورت درختی در حافظه قرار می دهد ، سپس ما می توانیم از این ساختار استفاده کنیم و داده های داخل فایل XML‌ را بخوانیم. مزیت DOM‌ سادگی آن است. از معایب آن نیز می توان به مصرف حافظه زیاد و کند بودن اشاره کرد.

اگر قصد دارید با فایل XML‌ ای کار کنید که حاوی اطلاعات زیادی است بهتر است از SAX استفاده کنید.

همانطور که قبلا هم گفتم یکی از بهترین راه های یادگیری استفاده از مثال . در ادامه سعی می کنیم با چند مثال با DOM و کار با فایل های XML‌ آشنا شویم.

قبل از شروع کار بهتر است یک فایل XML ایجاد کنیم و آن را در جای خاصی ذخیره کنیم. در اینجا من فایلی به نام friends.xml ایجاد می کنم و محتوی زیر را در آن می نویسم :


<?xml version="1.0" encoding="UTF-8"?>
<friends>
<person id="1">
<name>ahad</name>
<lastname>birang</lastname>
<gamescore>4.6</gamescore>
</person>
<person id="2">
<name>navand</name>
<lastname>namirania</lastname>
<gamescore>0.4</gamescore>
</person>
<person id="3">
<name>mehdi</name>
<lastname>akbari</lastname>
<gamescore>5.2</gamescore>
</person>
</friends>

فایل را در همان پوشه کد برنامه قرار می دهم. سپس با استفاده از کد زیر این فایل را به راحتی می خوانیم :



import java.io.File;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;


/**
*
* @author safeallah
*/
public class DOMParserExample {

public DOMParserExample(){
try{
File xmlFile=new File(getClass().getResource("friends.xml").getFile());
DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
DocumentBuilder db=dbf.newDocumentBuilder();
Document document=db.parse(xmlFile);

document.getDocumentElement().normalize();

System.out.println("[Root : "+document.getDocumentElement().getNodeName()+" ]");

NodeList list=document.getElementsByTagName("person");

for(int i=0;i<list.getLength();i++){
Node n=list.item(i);
if(n.getNodeType()==Node.ELEMENT_NODE){
Element element=(Element)n;
System.out.println("-----");

System.out.println("id \t\t:"+element.getAttribute("id"));
System.out.println("name \t\t: "+element.getElementsByTagName("name").item(0).getTextContent());
System.out.println("lastname\t: "+element.getElementsByTagName("lastname").item(0).getTextContent());
System.out.println("gamescore\t: "+element.getElementsByTagName("gamescore").item(0).getTextContent());

}

}


}catch(Exception e){
e.printStackTrace();
}
}
public static void main(String args[]){
new DOMParserExample();
}
}


خروجی برنامه :


[Root : friends ]
—---
id :1
name : ahad
lastname : birang
gamescore : 4.6
—---
id :2
name : navand
lastname : namirania
gamescore : 0.4
—---
id :3
name : mehdi
lastname : akbari
gamescore : 5.2
بازی دوز با الگوریتم هرس الفا بتا

محیط : کنسول
لذت ببرید