تست برنامههای نوشته شده توسط جاوا
جاوا امروزه به عنوان یک زبان پر کاربرد به خصوص در برنامههای کاربردی تجاری مطرح است و بسیاری از سازمانها و شرکتهای از این زبان و تکنولوژیهای مربوط به آن استفاده میکنند. ابزارهای زیادی برای تست برنامههای نوشته شده توسط جاوا مورد استفاده قرار میگیرند. برای مثال: در جاوا به دلیل مدیریت حافظه توسط Garbage collection ممکن است به دلیل نوشتن غیر استاندارد برنامه در حافظه نشتی داشته باشیم (memory leakage)که این امر سبب میشود حافظه گرفته شده آزاد نشود و با پر شدن حافظه برنامه دچار خلل شود. برای حل این مشکل و سایر مشکلات نیاز به تست نرمافزارهای نوشته شده در جاوا هستیم. با بزرگ شدن حجم نرمافزار تست آن نیز سختتر میشود. بهتر از قبل از نوشتن برنامههای تجاری بزرگ به تست و نحوه تضمین کیفیت آن هم فکر شود.
جاوا امروزه به عنوان یک زبان پر کاربرد به خصوص در برنامههای کاربردی تجاری مطرح است و بسیاری از سازمانها و شرکتهای از این زبان و تکنولوژیهای مربوط به آن استفاده میکنند. ابزارهای زیادی برای تست برنامههای نوشته شده توسط جاوا مورد استفاده قرار میگیرند. برای مثال: در جاوا به دلیل مدیریت حافظه توسط Garbage collection ممکن است به دلیل نوشتن غیر استاندارد برنامه در حافظه نشتی داشته باشیم (memory leakage)که این امر سبب میشود حافظه گرفته شده آزاد نشود و با پر شدن حافظه برنامه دچار خلل شود. برای حل این مشکل و سایر مشکلات نیاز به تست نرمافزارهای نوشته شده در جاوا هستیم. با بزرگ شدن حجم نرمافزار تست آن نیز سختتر میشود. بهتر از قبل از نوشتن برنامههای تجاری بزرگ به تست و نحوه تضمین کیفیت آن هم فکر شود.
جاوا به زبان ساده ۲۷:
import java.io. *;
import javax.servlet. *;
public class Hello extends GenericServlet {
public void service(ServletRequest request, ServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
final PrintWriter pw = response.getWriter();
pw.println("Hello, world!");
pw.close();
}
}
واژهٔ import کامپایلر جاوا را هدایت میکند که تمام کلاسهای عمومی و واسطها را از بستههای java.io وjava.servlet را در کامپایل وارد کند.
کلاس Hello کلاس Genericservlet را توسعه میدهد. کلاس Genericservlet واسطی برای سرور فراهم میکند تا درخواست را به servlet بفرستد و چرخهٔ زندگی servlet را کنترل کند.
import java.io. *;
import javax.servlet. *;
public class Hello extends GenericServlet {
public void service(ServletRequest request, ServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
final PrintWriter pw = response.getWriter();
pw.println("Hello, world!");
pw.close();
}
}
واژهٔ import کامپایلر جاوا را هدایت میکند که تمام کلاسهای عمومی و واسطها را از بستههای java.io وjava.servlet را در کامپایل وارد کند.
کلاس Hello کلاس Genericservlet را توسعه میدهد. کلاس Genericservlet واسطی برای سرور فراهم میکند تا درخواست را به servlet بفرستد و چرخهٔ زندگی servlet را کنترل کند.
JSP
صفحهٔ سرور جاوا قسمتی از سرور javaEE است که پاسخ تولید میکند. نوعاً صفحات HTML به درخواستهای HTTP از مشتری.JSPها کد جاوا در صفحهٔ HTML را با استفاده از حائل <%and%> اضافه میکنند.JSP به javaservlet کامپایل میشود.
صفحهٔ سرور جاوا قسمتی از سرور javaEE است که پاسخ تولید میکند. نوعاً صفحات HTML به درخواستهای HTTP از مشتری.JSPها کد جاوا در صفحهٔ HTML را با استفاده از حائل <%and%> اضافه میکنند.JSP به javaservlet کامپایل میشود.
شرکت سان میکروسیستم، ۴ نوع ویرایش از کاربردهای مختلف جاوا را ارائه دادهاست:
Java card for smartcard
JavaME
JavaSE
JavaEE
Java card for smartcard
JavaME
JavaSE
JavaEE
جاوا به زبان ساده 28
، ما در این جلسه قصد داریم چند String را با استفاده از متد ()concat در جاوا به
هم وصل کنیم.
public String concat(String str)
این متد )String)رشته str را به انتهای String( رشته ای( که این متد را صدا زده است وصل می کند.
برای مثال فرض کنید یک String با نام s داشته باشیم:
String s="java";
حاال قصد داریم )String)رشته "pro "را به انتهای )String)رشته s وصل کنیم، برای این کار از متد concat
استفاده می کنیم:
s=s.concat("pro");
با این کار مقدار )String)رشته s از "java "به "javapro "تغییر می کند.
حتما براتون سوال پیش اومده چرا رشته s همزمان که متد concat را صدا زده است سمت چپ مساوی نیز
قرار گرفته است؟!!
پاسخ:
دستور ("pro("concat.s رشته "pro "را به رشته s وصل می کند ، حاال برای این که مقدار قبلی
رشته s جای خود را به مقدار جدید بدهد باید با قرار دادن مساوی ، مقدار جدید را در داخل رشته s
بریزیم.
برای این که چند )String)رشته را به یک رشته وصل کنیم باز می توانیم از متد concat استفاده کنیم:
برای مثال فرض کنید یک String با نام s داشته باشیم:
String s="java"؛
، ما در این جلسه قصد داریم چند String را با استفاده از متد ()concat در جاوا به
هم وصل کنیم.
public String concat(String str)
این متد )String)رشته str را به انتهای String( رشته ای( که این متد را صدا زده است وصل می کند.
برای مثال فرض کنید یک String با نام s داشته باشیم:
String s="java";
حاال قصد داریم )String)رشته "pro "را به انتهای )String)رشته s وصل کنیم، برای این کار از متد concat
استفاده می کنیم:
s=s.concat("pro");
با این کار مقدار )String)رشته s از "java "به "javapro "تغییر می کند.
حتما براتون سوال پیش اومده چرا رشته s همزمان که متد concat را صدا زده است سمت چپ مساوی نیز
قرار گرفته است؟!!
پاسخ:
دستور ("pro("concat.s رشته "pro "را به رشته s وصل می کند ، حاال برای این که مقدار قبلی
رشته s جای خود را به مقدار جدید بدهد باید با قرار دادن مساوی ، مقدار جدید را در داخل رشته s
بریزیم.
برای این که چند )String)رشته را به یک رشته وصل کنیم باز می توانیم از متد concat استفاده کنیم:
برای مثال فرض کنید یک String با نام s داشته باشیم:
String s="java"؛
ادامه جاوا 28
حاال قصد داریم رشته های "pro "." ، "و "ir "را به رشته s وصل کنیم برای اینکار به صورت زیر عمل می
کنیم:
s = s.concat("pro").concat(".").concat("ir");
با دستور باال مقدار رشته s از "java "به ir.javapro تغییر مقدار پیدا میکند.
مثال(Example:(
در این مثال ما از دو روش برای اتصال رشته ها به یکدیگر استفاده کرده ایم:
package javalike;
public class ConcatenationExample {
public static void main(String args[]) {
//One way of doing concatenation
String str1 = "Welcome";
str1 = str1.concat(" to ");
str1 = str1.concat(" String handling ");
System.out.println(str1);
// Other way of doing concatenation in one line
String str2 = "This";
str2 = str2.concat(" is").concat(" just a").concat(" String");
System.out.println(str2);
}
}
خروجی(output: (
Welcome to String handling
This is just a String
حاال قصد داریم رشته های "pro "." ، "و "ir "را به رشته s وصل کنیم برای اینکار به صورت زیر عمل می
کنیم:
s = s.concat("pro").concat(".").concat("ir");
با دستور باال مقدار رشته s از "java "به ir.javapro تغییر مقدار پیدا میکند.
مثال(Example:(
در این مثال ما از دو روش برای اتصال رشته ها به یکدیگر استفاده کرده ایم:
package javalike;
public class ConcatenationExample {
public static void main(String args[]) {
//One way of doing concatenation
String str1 = "Welcome";
str1 = str1.concat(" to ");
str1 = str1.concat(" String handling ");
System.out.println(str1);
// Other way of doing concatenation in one line
String str2 = "This";
str2 = str2.concat(" is").concat(" just a").concat(" String");
System.out.println(str2);
}
}
خروجی(output: (
Welcome to String handling
This is just a String
جاوا به زبان ساده 29
متد ()compareToIgnoreCase شبیه متد ()compareTo یک String(رشته( را از نظر لغوی مقایسه
می کند. تنها تفاوت آنها این است که متد ()compareToIgnoreCase هنگام مقایسه دو String(رشته(
حروف بزرگ)uppercase )یا کوچک)lowercase )را نادیده می گیرد. به عبارت دیگر حروف بزرگ یا
کوچک تاثیری در مقایسه دو رشته از طریق متد ()compareToIgnoreCase ندارد.
این متد همانند متد ()compareTo دو String(رشته( را بر اساس ارزش مقدار یونیکد)Unicode )هر
کاراکتر)character )مقایسه می کند.
هر کاراکتر یک مقدار عددی دارد که به آن یونیکد)Unicode )می گویند.
مثال یونیکد کاراکتر 'a 'برابر 79 ، کاراکتر 'A 'برابر 56 می باشد.خب حروف کوچک و بزرگ در مقایسه دو رشته
با هم از طریق ()compareTo تاثیر گذار است:
فرض کنید دو رشته s1 و s2 داشته باشیم:
String s1="AA";
String s2="aa";
همان طور که مشاهده میکنید هر دو رشته s1 و s2 دارای دو حرف مشابه می باشند با این تفاوت که S1 دارای
حروف A بزرگ و S2 دارای حروف a کوچک می باشند.
اگر دو رشته s1 وs2 را با متد ()compareTo مقایسه کنید رشته s1 کوچک تر رشته s2 می باشد چرا که
یونیکد حروف a برابر 79 و یونیکد حرف A برابر 65 می باشد.
حال اگر دو رشته S1 و S2 را از طریق متد ()compareToIgnoreCase باهم مقایسه کنید، چون حروف
بزرگ یا کوچک کاراکترهای هر دو رشته در مقایسه این متد تاثیری ندارد ، هر دو رشته S1 و S2 باهم برابر
خواهند بود.
compareToIgnoreCase(String str)
متد ()compareToIgnoreCase شبیه متد ()compareTo یک String(رشته( را از نظر لغوی مقایسه
می کند. تنها تفاوت آنها این است که متد ()compareToIgnoreCase هنگام مقایسه دو String(رشته(
حروف بزرگ)uppercase )یا کوچک)lowercase )را نادیده می گیرد. به عبارت دیگر حروف بزرگ یا
کوچک تاثیری در مقایسه دو رشته از طریق متد ()compareToIgnoreCase ندارد.
این متد همانند متد ()compareTo دو String(رشته( را بر اساس ارزش مقدار یونیکد)Unicode )هر
کاراکتر)character )مقایسه می کند.
هر کاراکتر یک مقدار عددی دارد که به آن یونیکد)Unicode )می گویند.
مثال یونیکد کاراکتر 'a 'برابر 79 ، کاراکتر 'A 'برابر 56 می باشد.خب حروف کوچک و بزرگ در مقایسه دو رشته
با هم از طریق ()compareTo تاثیر گذار است:
فرض کنید دو رشته s1 و s2 داشته باشیم:
String s1="AA";
String s2="aa";
همان طور که مشاهده میکنید هر دو رشته s1 و s2 دارای دو حرف مشابه می باشند با این تفاوت که S1 دارای
حروف A بزرگ و S2 دارای حروف a کوچک می باشند.
اگر دو رشته s1 وs2 را با متد ()compareTo مقایسه کنید رشته s1 کوچک تر رشته s2 می باشد چرا که
یونیکد حروف a برابر 79 و یونیکد حرف A برابر 65 می باشد.
حال اگر دو رشته S1 و S2 را از طریق متد ()compareToIgnoreCase باهم مقایسه کنید، چون حروف
بزرگ یا کوچک کاراکترهای هر دو رشته در مقایسه این متد تاثیری ندارد ، هر دو رشته S1 و S2 باهم برابر
خواهند بود.
compareToIgnoreCase(String str)
جاوا به زبان ساده ۳۰
گرفتن ورودی از کاربر (input)
impot javax.swing.JOptionPane;
public class NameDialog
{
public static void main (String[] args)
{
String name = JOptionPane.showInputDialog("Whats your name ?");
String message = String.format("Welcom, %s, to Java Programming!", name);
JOptionPane.showMessageDialog(null, message);
}
}
یک پنجره باز میشه که مینویسه whats your name
و یک کادر داره که نامتون رو مینویسید بعد نامتون رو با پیامه welcom to java Programming میندازه بیرون
showInputDialog
از متد دریافت ورودی از کاربر توی کلاس JOptionPane استفاده میکنه ..و از یک کادر ورودی خیلی ساده حاوی یک اعلان و یک فیلد رای وارد کردن متن که به جهبه متن هم معروف هست استفاده کرده
متد استاتیک format
از متد استاتیکformat برای برگشت دادن یک رشته که حاوی پیام خوشامد گویی به همراه نام تایپ شده از طرف کاربر هست استفاده شده
درکل متد format شبیه متدSystem.out.printf هست
گرفتن ورودی از کاربر (input)
impot javax.swing.JOptionPane;
public class NameDialog
{
public static void main (String[] args)
{
String name = JOptionPane.showInputDialog("Whats your name ?");
String message = String.format("Welcom, %s, to Java Programming!", name);
JOptionPane.showMessageDialog(null, message);
}
}
یک پنجره باز میشه که مینویسه whats your name
و یک کادر داره که نامتون رو مینویسید بعد نامتون رو با پیامه welcom to java Programming میندازه بیرون
showInputDialog
از متد دریافت ورودی از کاربر توی کلاس JOptionPane استفاده میکنه ..و از یک کادر ورودی خیلی ساده حاوی یک اعلان و یک فیلد رای وارد کردن متن که به جهبه متن هم معروف هست استفاده کرده
متد استاتیک format
از متد استاتیکformat برای برگشت دادن یک رشته که حاوی پیام خوشامد گویی به همراه نام تایپ شده از طرف کاربر هست استفاده شده
درکل متد format شبیه متدSystem.out.printf هست
اموزش نصب دو تلگرام در لینوکس
درود، ابتدا تلگرام رو از مخازن رسمی با دستور زیر نصب کن.
کد: [انتخاب]
sudo apt install telegram-desktop
و بعد یک دایرکتوری برای ذخیر دیتاهای تلگرام دوم بساز
کد:
mkdir ~/teleg
و بعد با دستور زیر تلگرام رو اجرا کن.
کد:
telegram-desktop -many -workdir ~/teleg
موفق باشید.
درود، ابتدا تلگرام رو از مخازن رسمی با دستور زیر نصب کن.
کد: [انتخاب]
sudo apt install telegram-desktop
و بعد یک دایرکتوری برای ذخیر دیتاهای تلگرام دوم بساز
کد:
mkdir ~/teleg
و بعد با دستور زیر تلگرام رو اجرا کن.
کد:
telegram-desktop -many -workdir ~/teleg
موفق باشید.
ارایه ها
جاوا به زبان ساده ۳۱
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 = عدد دوم
به همین دلیل ۴ رو چاپ کرد چون کامپیوتر از ۰ شروع میکنه
این روش خیلی راحت تر از روش بالایی بود درسته؟
جاوا به زبان ساده ۳۱
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 بر خلاف اسکنر فقط مقدار رشته رو قبول میکنند!
اموزش مباحث 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 استفاده میشود
برابری در رشته ها
وقتی میخواستیم شرط بزاریم که مثلا مقدار صحیحمون برابر فلان بود فلانو نمایش بده
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 قبل از نمونه (شی) ایجاد شده از یک کلاس صدا زده می شود.
✅پاسخ: زیرا متدهای استاتیک را می توان بدون نمونه سازی(شی ساختن) از یک کلاس صدا زد. و متد ()main قبل از نمونه (شی) ایجاد شده از یک کلاس صدا زده می شود.
Deleted Account
tokhmmorq.zip
سورس بازی تخم مرغ به زبان جاوا:
فایل زیپ و فایل jar
فایل زیپ و فایل jar
به جاوا خوش آمدید..
یکی از پرکاربرد ترین زبان های برنامه نویسی دنیا.عموم مردم در مورد اعمالی که کامپیوتر ها انجام میدهند،آشنایی دارند.با استفاده از این کتاب با دستورهایی اشناخواهید شد که اعمال ویژه ای در یک موضوع خاص انجام میدهند، و کامپیوتر اجرای این دستورات را به عهده دارد.
نرم افزار ،سخت افزار را کنترل میکند.شما با این کتاب برنامه نویسیobject یا همان شی گرا را خواهید اموخت
جاوا زبانی است که می تواند نیاز های برنامه نویسی بسیاری از شرکت های بزرگ جهان را براورده سازد.
همچنین جاوا تبدیل به زبانی برای پیاده سازی برنامه های کاربردی مبتنی بر اینترنت شده و به عنوان نرم افزاری برای اتصال دستگاه ها به اینترنت انتخاب شده است
طولی نمیکشد که سیستم استریو و سایر لوازم موجود در خانه شما از طریق تکنولوژی جاوا باهم تشکیل یک شبکه دهند
از اینکه دستگاه های بی سیم مانند تلفن همراه ،پیجر ها از طریق شبکه بی سیم اینترنتی که بر پایه ی نوعی از تکنولوژی جاوا ارتباط برقرار میکنند ،تعجب نکنید
درواقع جاوا کاربرد گسترده ای دارد.
#کاربرد جاوا
یکی از پرکاربرد ترین زبان های برنامه نویسی دنیا.عموم مردم در مورد اعمالی که کامپیوتر ها انجام میدهند،آشنایی دارند.با استفاده از این کتاب با دستورهایی اشناخواهید شد که اعمال ویژه ای در یک موضوع خاص انجام میدهند، و کامپیوتر اجرای این دستورات را به عهده دارد.
نرم افزار ،سخت افزار را کنترل میکند.شما با این کتاب برنامه نویسیobject یا همان شی گرا را خواهید اموخت
جاوا زبانی است که می تواند نیاز های برنامه نویسی بسیاری از شرکت های بزرگ جهان را براورده سازد.
همچنین جاوا تبدیل به زبانی برای پیاده سازی برنامه های کاربردی مبتنی بر اینترنت شده و به عنوان نرم افزاری برای اتصال دستگاه ها به اینترنت انتخاب شده است
طولی نمیکشد که سیستم استریو و سایر لوازم موجود در خانه شما از طریق تکنولوژی جاوا باهم تشکیل یک شبکه دهند
از اینکه دستگاه های بی سیم مانند تلفن همراه ،پیجر ها از طریق شبکه بی سیم اینترنتی که بر پایه ی نوعی از تکنولوژی جاوا ارتباط برقرار میکنند ،تعجب نکنید
درواقع جاوا کاربرد گسترده ای دارد.
#کاربرد جاوا
بسیاری از افراد بر این باورند که اینده در اختیار ریزپردازنده های هوشمند خواهد بود.
با در نظر گرفتن این مطلب, شرکت sun Mictosystem یک تیم تحقیقاتی با نام کد Green در سال ۱۹۹۰ تاسیس کرد.
نتیجه پروژه که مبتنی بر C و C++ بود توسط james Gosling بنام OAk نامیده شد...
پس از ملاقات افراد تیم Sun در یک کافه محلی در حال بحث در سر نام..جعبه ای حاوی قهوه دیدند که مارک ان JAVA بود و سپس بر سر نام JAVA به توافق رسیدند.
اما پروژه Green با مشکلاتی مواجه شد. بازار قطعات هوشمند مطابق با انچه که شرکت Sun انتظار داشت رشد نکرد.بدتر از ان قرادادی که شرکت Sun بر سر ان رقابت میکرد به یک شرکت دیگر واگذار گردید.از این رو پروژه در وضعیت خطرناک لغو قرار گرفت.از بخت بلند , در سال ۱۹۹۳, گشت و گذار در وب گسترده جهانی (WWW) از محبوبیت بسیار زیادی در بین مردم برخوردار شده بود.بنابراین اهالی Sun بلافاصله متوجه کاربرد جاوا و پتانسیل های ان در ایجاد محتویات دینامیک بر صفحات وب شدند.
شرکت Sun در ماه می ۱۹۹۵ به عرضه تجاری جاوا پرداخت.بلافاصله, جاوا نظر بسیاری از مراکز تجاری را بخود جلب کرد, چرا که علاقه ی عجیبی نسبت به وب گسترده ی جهانی در مردم ایجاد شده بود.
هم اکنون از جاوا برای ایجاد صفحات وب با قابلیت دینامیکی و تعاملی, توسعه برنامه های کاربردی در مقیاس گستره, اپلیکیشن های موبایل, تکنولوژی کارت های بانکی مبتنی بر جاوا و همچنین هوش مصصنوعی استفاده میشود
با در نظر گرفتن این مطلب, شرکت sun Mictosystem یک تیم تحقیقاتی با نام کد Green در سال ۱۹۹۰ تاسیس کرد.
نتیجه پروژه که مبتنی بر C و C++ بود توسط james Gosling بنام OAk نامیده شد...
پس از ملاقات افراد تیم Sun در یک کافه محلی در حال بحث در سر نام..جعبه ای حاوی قهوه دیدند که مارک ان JAVA بود و سپس بر سر نام JAVA به توافق رسیدند.
اما پروژه Green با مشکلاتی مواجه شد. بازار قطعات هوشمند مطابق با انچه که شرکت Sun انتظار داشت رشد نکرد.بدتر از ان قرادادی که شرکت Sun بر سر ان رقابت میکرد به یک شرکت دیگر واگذار گردید.از این رو پروژه در وضعیت خطرناک لغو قرار گرفت.از بخت بلند , در سال ۱۹۹۳, گشت و گذار در وب گسترده جهانی (WWW) از محبوبیت بسیار زیادی در بین مردم برخوردار شده بود.بنابراین اهالی Sun بلافاصله متوجه کاربرد جاوا و پتانسیل های ان در ایجاد محتویات دینامیک بر صفحات وب شدند.
شرکت Sun در ماه می ۱۹۹۵ به عرضه تجاری جاوا پرداخت.بلافاصله, جاوا نظر بسیاری از مراکز تجاری را بخود جلب کرد, چرا که علاقه ی عجیبی نسبت به وب گسترده ی جهانی در مردم ایجاد شده بود.
هم اکنون از جاوا برای ایجاد صفحات وب با قابلیت دینامیکی و تعاملی, توسعه برنامه های کاربردی در مقیاس گستره, اپلیکیشن های موبایل, تکنولوژی کارت های بانکی مبتنی بر جاوا و همچنین هوش مصصنوعی استفاده میشود