با سلامنوشته شده توسط javaphantom
قرار شد که به عنوان اطلاعات پیش فرض همان ای بوک موجود روی همین سایت ( مطرح شده در پستهای اول ) را به عنوان رفرانس بپذیریم و تقریبا بیشتر این مطالب در آنجا بیان شده اند.
با سلامنوشته شده توسط javaphantom
قرار شد که به عنوان اطلاعات پیش فرض همان ای بوک موجود روی همین سایت ( مطرح شده در پستهای اول ) را به عنوان رفرانس بپذیریم و تقریبا بیشتر این مطالب در آنجا بیان شده اند.
با سلامنوشته شده توسط rezaTavak
سعی می کنیم با همین هدف ادامه دهیم .
با سلام
یکی از اساسی ترین کارها در جاوا ایجاد اشیا از کلاسها است .
هنگامی که یک شیی ایجاد می شود برنامه جاوا اعمال زیر را انجام می دهد :
- حافظه اصلی را به متغیرهای شیی اختصاص می دهد .
- شیی را به کد متدهای خود پیوند می دهد.
- اگر کلاسی که شیی از ان ایجاد شده است دارای سازنده ای باشد سازنده را اجرا می کند
- آدرس شروع ذخیره داده های شیی ( یک اشاره گر ) را به برنامه باز می گرداند.
من خودم یک سؤال دارم !! چه طور می توان مسنجری برای سایت قرار داد که باز دیدکنده سؤال یا نظر خود را در آن نوشته و پس از فرستادن مطالبش اتوماتیک و بلافاصله در سایت ما قرار گیرد. پیشاپیش از راهنمایی شما متشکرم
دوست عزیز pywsite لطفا پست بی معنی نکن !
در ضمن اون چیزی که شما می گید بهش مسنجر سایت نمی گن !
خوب یعنی پیشنهاد و سوالات من به هیچ دردی نمی خورد. همه بعنوان پیش فرض در کتاب هست.
واقعا راست میگی پس من برم کتاب بخونم بهتره. کاش قبل از اینکه وارد این تالار می شدیم از مون تست پیش نیاز این تالارو می گرفتن. من اصلا نوفهمم.
آخرین ویرایش به وسیله javaphantom : سه شنبه 09 اسفند 1384 در 21:42 عصر
سوال: چه جوری می تونیم کاری کنیم که فقط یک باز از یک کلاس نمونه بتوان تعریف کرد؟
راهنمای singelton pattern
سوال : چه گونه می توان کاری کرد که بتوان اصلا از یک کلاس هیچ نمونه ای تعریف نکرد؟
با سلامنوشته شده توسط javaphantom
چه زود بهتون برمی خوره !
به خاطر این این حرفو زدم که زیاد گیر مطالب نظری نباشیم و بتونیم همراه حرفایی که می زنیم مثالای عملی برنامه نویسی بزنیم !
سوالای شما هم خیلی ارزشمند هستن به شرطی که خودتون شروع به طرح و حل اونا بکنین تا بقیه هم با اونا آشنا بشن.
همه چیز هم به طور پیش فرض تو کتاب نیس ، فقط مطالب اساسی هستش .
اگه از دست من ناراحت شده باشینم باید ببخشین
نوشته شده توسط Pywsiteبا سلامنوشته شده توسط persianshadow
احتمالا منظورشون یک Forum بوده !
با سلامنوشته شده توسط javaphantom
میتونی برای ما تازه کارا یه کم بیشتر توضیح بدی
دوست عزیز سلام به من اصلا بر نخورد. می دونی چرا؟ چون من می خوام دونستهام رو کامل کنم.
طرح سولات من از این نیست که من به آنها واقف نیستم فقط می خوام بیشتر یاد بگیرم. چون می دونم خیلی ها بیشتر از من بلد هستند.
اما سوال من خیلی راحته. فرض کن یک کلای به نام MyClass داری و می خواهی هرکسی فقط بتونه یک بار از این کلاس یک نمونه تعریف کنه یعنی یک بار از این کلاس بتونه new کنه؟ چی کار می کنی؟ چه جوری جلوی طرفتو می گیری.؟
دومیش انیکه فرض کن به طرفت اصلا اجازه ندی که بتونه از کلاست یک نمونه تعریف کنه؟ یعنی نتونه از کلاست new بکنه؟ جوابه اینو می دم تا بفهمی که چقدر کار آسونه. کلاستو از نوع private تعریف کن (constructore) منظورم دیگه هیچ کس نمی تونه از کلاست new بکنه.
اما اولیش به عهده خودتون ببینم شما ها چی فکر می کنید.
جوابشو به زوردی براتون می نویسم و کاربرد جفتشون در برنامه نویسی هم توضیح می دم
بای بای
با سلام به اساتیت محترم
اگر فکر می کنید که سوالات من بدرد نمی خوره ، سنگینه یا غیر قابل فهمه به من بگین. همانجور که گفتم من خودم بیشتر از شما نیاز به آموزش دارم.
می خواهین در مورد کلاسها در جاوا و ++c #C یک مروره مختصر بکنیم و تفاوتهای آنها رو برسی کنیم.
تفاوت constructor و destructor رو باهم در دو زبان مرور کنیم و با یک قسمت جدید بنام garbage collector در جاوا آشنا بشیم.؟ بعد از او به سراغ filed properties method و انواع آن بریم.؟ یا همه در این امر متخصص هستین؟ چطور بریم اصلا سراغ GUI Desighning with AWT & Swing ؟
سلام
به نظر من دو موضوع مهم است:
یک همان کار گرافیکی یا کنترلهای گرافیکی.
دوم کار بانک اطلاعاتی.
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
با سلامنوشته شده توسط javaphantom
ما مشتری تمام مطالبی هستیم که یک نفر شروع کنه و از اول توضیح بده و تا آخر ادامه بده
بریم سر محیط گرافیکی یا نه؟ اگر 5 نفر بیشتر بشین شروع می کنم کار با محیط گرافیکی و بعد از اون کار با بانک اطلاعاتی.
1. GUI Design with AWT & Swing
Event Handeling
در آخر Java Database Connectivity (JDBC
اگر 5 نفر واقعا خواهان بودن من شروع می کنم درس دادن تمام پیش نیازشم به عهده خودتون.
اگر موافق هستید بیگید شروع کنیم.
سلام
من اولیش باشم؟
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
با سلامنوشته شده توسط javaphantom
من هم مشتری دوم
آقا من با همین تعداد هم همین مطالب رو می گم ! مشتری نبود !
بابا بی خیال مگه اینجا کلاس درسه ! ببینید دوستان عزیز ما اگه چیزی رو بلد باشیم بسادگی
نشر می دیم حتی اگه یه نفر هم نباشه که اونا رو بخونه . پس نیاز نیست برای انجام کاری
خط و نشون بکشیم. من همونطور که قول داده بودم تویه بخش نکات شروع به نوشتن کردم
و می نویسم که حتی اگه 2 سال دیگه یه نفر اومد تویه وب یه چیزی جستجو کرد اشکش در نیاد
که مطلب فارسی گو ؟ به هر حال پیروز باشید
سلام
من هم مشتری سوم ولی خواهشاً کامل توضیح بدین
بلکه کلاس درسه
اگر شما بلد هستید بارها و بارها گفتم شروع کنید من تشنه یاد گیری هستم. اگرم فکر می کنید که دونسته های خودتونو نموتیند انتقال بدید پس حداقل کمک من کنید. من رو نهی نکنید من ادعایی ندارم شما شروع به گفتن کنید. من منتظرم
جناب persianshadow چاکرتم هستیم
آخرین ویرایش به وسیله javaphantom : شنبه 13 اسفند 1384 در 01:11 صبح
جناب استاد javaphantom . لطفا شروع کنید ما هم در خدمتتون هستیم.
در مورد singleton design pattern هم فکر کنم برای این کلاس یک کم زود باشه.
با تشکر
با سلام، اولا من استاد نیستم من هیچی نیستم تعارف نیست. دوما از مدیر محترم این تالا خواهش میکنم اگر فکر میکنند که من از حد خودم تجاوز کردم یا مطالب به درد نخوره یا اشتباه داره به من خصوصی میل بزنندو من با سرافرازی از این مجموعه خارج بشم. مرسی ومتشکرم. سوما در جوابه دوست عزیز جناب persianshadow بگم نوشتن یک مطلب درست برای من خیلی وقت می بره و برام مهمه که بدونم که چند نفر برای وقتی که من صرف می کنم ارزش قائل میشوند.
مقدمه:
Graphical User Interface (GUI) نشان دهنده محیط هایی هستند که بصورت مصور می باشند. (visual program). در این نوع محیط های برنامه نویسی اجزایی وجود دارندکه از قبل در کتابخانه زبان آن میحط گنجانده شده تا برنامه نویس با استفاده از آن اجزا سریع بتونه یک محیط گرافیکی رو بسازه. مثال: خود ویندوز شما ، برازر (browser) .
برای یک فریم (frame) که ممکنه به چند قسمت تقسیم شده باشه یک منو بار، چند دکمه ...!
وجود داره ویک نمونه بارز از GUI می باشد.
کلاس swing :
در جاوا کلاسیکه سازنده اجزا میحط GUI شما هستند همین کلاس swing می باشد که تمام اجزای مورد نیاز ما (دکمه، فریم،منوبار، تکست بار...) همه در package یا همان کتابخانه javax.swing قرار دارد.
نکته: در اول برنامه باید این package را با دستور import صدا کنیم.
نکته: تمام اجزایی که در این package هستند مخصوص محیط GUI جاوا به حساب می آیند.
اما محیط استاندار GUI و اجزایی که در یک platform دیگر وجود دارند مانند (Windows) تمام این اجزا در package دیگری به نام java.awt که کلا آنها رو AWT (Abstract Windowing Toolkit) گفته می شوند وجود دارد. وقتی یک برنامه جاوا اجرا میشود با امکان استفاده از AWT GUI دریک platform یی بغییر از جاوا تمام اجزای تعریف شده مثل دکمها، فریم ووو همه بصورت استاندارد آن سیستم پیاده می شوند.
نکته: می توانید برنامه خودتون رو از لحاظ گرافیکی توری بنویسید که وقتی در windows اجرا میشود حالت windows داشته باشد، اگر در linux یا unix یا در apple ووو بنویسید شبیه به محیط همان platform از لحاظ گرافیکی باشد. (با حاله نه؟) این یکی از قدرتهای جاواست. C# چی می تونه بگه! ؟
نکته: اجزایی که در کلاس swing هستند بسیار از لحاظ حجم کم و انعطاف پذیری بالایی هستند چون مخصوص برای محیط جاوایی هستند.(مثال ها بیشتر در این محیط زده خواهد شد) .
نکته : کسانیکه با package java.swing یا package java.awt کار می کنند باید با
کلاسهای Component,Container,JComponent که هر کدام از آنها تعریف کننده شکل یک جزء در اجزای Swing هستند آشنا باشد. در مثال بیشتر خواهید دید.
class Componet : صفتهای مشترک و رفتارها زیر کلاس خودش را تعریف میکند.
class Container : مجموعه ای از روابط اجزا بایک دیگرو توضیح میده.
class JComponet : پدر بیشتر اجزاها در Swing هست.
با کمی آشنایی می خواهیم تمام تئوریهای خودمونو به صورت عملی اجرا کنیم.
اولین فرم جاوایی خودمون را درست می کنیم.
نکته: از آنجایی که من آگاه نیستم که شما با چه محیطی دستورات جاوایی را اجرا می کنید، لذا من پیشنهاد می کنم که در یک notepad دستورات زیرو بنویسید که بیشتر با قضیه درگیر بشید، تا با استفاده از محیطهای گوناگون مثل JBuilder ووو خودمونو تنبل کنیم. معماری کار مهمه. باز این نظر منه.
مثال : یک فریم بسازید یا همان پنجره؟
یک فایل به نام MyFrame.java در notepad درست کنیدو بنویسید؟
import javax.swing.*;
public class MyFrame {
public MyFrame() {
JFrame jFrame = new JFrame("MyFrame");
jFrame.setSize(200,200);
jFrame.setLocation(300,200);
jFrame.setVisible(true);
}
public static void main(String[] s) {
new MyFrame();
{
{
آخرین ویرایش به وسیله javaphantom : شنبه 13 اسفند 1384 در 14:28 عصر
توضیحات:
در خط اول برنامه همانطور که گفته شد با دستور import به کتابخانه یا package مورد نظرمون که همان swing است دسترسی پیدا کردیم.
درخط دوم کلاسی که حتما باید با نام فایلمون یکی باشد را ایجاد کردیم
در خط سوم سازنده کلاس را ایجاد کردیم
در خط چهارم نمونه ای با نام jFrame از کلاس JFrame ساختیم که یکی از سازنده های این کلاس این است که یک آرگومان بصورت رشته می گیرد که نام پنجره یا هما فریم ما می شود که من همان نام MyFrame رو براش انتخاب کردم.
در خط پنجم از method setSize برای اندازه و ابعاد فریم خودم به دلخواه دو عدد int داده ام. فرم کلی این method به شرح زیر است
public void setSize(int x, int y) بازهم تحقیق بیشتر شود.
خط ششم از method setLocation برای مشخص کرد جای ظاهر شدن پنجرم یا همان فریم استفاده کردم. شکل کلی این method به شرح زیر است
public void setLocation(int x, int y) بازم مطالعه بیشتر شود.
خط هفتم برای ظاهر کردن پنجره یا همان فریم در صفحه است با این دستور که دستور پایانی است پنجره یا فریم ساخته شده ظاهر می شود. فرم کلی method به شرح زیر است
public void setVisible(Boolean b)
در تابع main ازکلاس درست شده یک new گرفتم و فرم تشکیل شد. بصورت جاوایی نه windows.
نکته: وقتی که شما می خواهید با کلیک کرد بروی علامت ضربدل که برروی پنجره شما هست به بستن یا خاتمه برنامه قصد کنید می بینید که پنجره شما بسته می شود ول همچنان شما هنور از برنامه خارج نشده اید. اگر در محیطی خارج از JBulder ووو هستید با زدن کلیدهای CTRL+C از برنامه خارج می شوید. اگر هم در محیط خواصی هستید اون محیط به طریقی کنترل کارو در دست می گیرد.
علت بعد توضیح داده میشود از شما هم خواننده خوب دلم مخواهد نظر بدهید.
تا بعد کم کم به فریم خود اجزایی اضافه کنیم و و و.
نظرات سوالات شما به همه کمک می کنه که زودتر و بهتر پیشرفت کنیم.
دستت درد نکند . تشکر
برای خروج از برنامه و بستن پنجره از کد زیر استفاده میکنیم.
کلا برنامه زیر یک پنجره باز می کند و بازدن رو دکمه ضربدل از پنجره بسته می شود.
اگر در مورد این بخش سوالی ندارید دفعه بد در مورد layout ها و panel ها صحبت می کنیم و کم کم به فریم خودمون component اضافه می کنیم
public class Test {
javax.swing.JFrame jframe;
public Test() {
try{
init();
}
catch (Exception e) {
}
}
private void init() throws Exception {
jframe = new JFrame("test");
// jframe
//
Container content = this.jpanel;
jframe.setBounds(200,100,200,300);
jframe.setDefaultCloseOperation(this.jframe.EXIT_O N_CLOSE);
jframe.show();
}
//main
public static void main(String[] st) {
new Test();
{
{]
آخرین ویرایش به وسیله javaphantom : دوشنبه 15 اسفند 1384 در 14:35 عصر
با سلام
بهتر است دوستان بعد از نوشتن بلوکهای برنامه در این تاپیک آنها را علاوه بر چپ چین کردن به حالت EN نیز در آورند که خواندن آنها راحت تر باشد .
آخرین ویرایش به وسیله magina : سه شنبه 16 اسفند 1384 در 16:42 عصر
سلام
من یه فایل پی دی اف در مورد انواع Layout ها در جاوا گذاشتم. شاید مفید باشه .
سلام
چرا متوقف شدین؟ ما منتظریم!!!
با سلام
ببخشین یه کم نبودم
من یه چند روز بود که مسافرت بودم و به اینتر نت دسترسی نداشتم .
تازه امروز اومدم . برم ببینم چه خبره
با سلام
اولش من می خواستم جاوا رو با مثالای ساده و عملی اینجا شروع کنیم ، البته طوری که به درد آدمای تازه واردی مثل من هم بخوره . بعدش دوستان که مطمئنا تجربه عملی و سواد نظری شون خیلی بالاست ، لطف کردن و این زحمت را به عهده گرفتن .
فقط می خواستم خواهش کنم مطالب و مثالها ساده باشن و مقدماتی و دیگه اینکه وقفه خیلی طولانی در ارائه مطالب نباشه .
با سلام
یه پیشنهاد :
یک کلاس درس با ده نفر شاگرد که هر کدام باید در دو درس نمره بگیرند.
سلام
چه جور کلاسی؟ استاد کی هست؟
به هر حال من برای یاد گرفتن جاوا به هر صورتی پایه ام!!!
با سلامنوشته شده توسط 3tareh
منظورم طراحی یک برنامه برای این کلاس بود که بتونه تعداد دانش آموزان ، اسامی آنها ، نمرات آنها و معدل هر کدام آنها و در نهایت جست و جوی بین آنها را انجام بدهد .
سلام منم تازه می خوام شروع به کار کنم ممنون میشم
اگه کمکم کنین
مر30
با سلامنوشته شده توسط mfarzan2004
بهترین کمک اینه که شروع بکنین به نوشتن
با سلام
من یک تازه کارم و نمی خواهم خدمت اساتید بی احترامی کنم
خیلی وقته که یک سوال مطرح شده وکسی جواب نداده
شاید جواب سوالی که مطرح شده خیلی ها بدونن ولی می خواستم چیزی رو که بلدم بگم
در کلاسی که می خواهیم نشود تعدادی آبجکت بیشتر از آن ساخت
اینجوری تعریف می کنیم مثلا
public class Myclass {و در کلاس اصلی باید اینجوری آبجکت رو بسازیم
private static int counter = 0;
private Myclass() {
}
public static Myclass getMyclass(){
counter ++;
if (counter > 2) {
System.out.println("Exceeded ");
return null;
}
else
return new Myclass();
}
}
// in main class
Myclass obj1=Myclass.getMyclass();
در مورد کلاس هم من هم هستم
اگه میشه مبحث jdbc
رو زود تر بگید
آخرین ویرایش به وسیله jmajid : سه شنبه 26 اردیبهشت 1385 در 13:39 عصر