انجمن جاواکاپ
در نظرسنجی زیر شرکت کنید. پنجشنبه پاسخ صحیح را اعلام کرده و توضیح میدهیم. #دستگرمی_سهشنبه @JavaCupIR
پاسخ صحیح: ۲۲
برای رسیدن به خروجی، متد method را خط به خط بررسی میکنیم:
خط 1: متغیرهای t1 و t2 هنوز new نشدهاند.
خط 2: متغیر i برابر با 66 است بنابراین l1 برابر با 66 میشود. در مورد ++l2=l1، باید توجه داشت که چون ++بعد از اسم متغیر آمده، ابتدا l2 برابر با l1 یعنی 66 میشود و سپس مقدار l1 یک واحد افزایش یافته و برابر با 67 میشود. بنابراین در انتهای اجرای این خط، داریم: l1=67 و l2=66
خط 3: یک شی جدید از کلاس Program ایجاد میشود و در نتیجه آن بلوک مقداردهی اولیه هم اجرا شده و مقدار متغیر استاتیک i برابر با 65 میشود.
خط 4: خواهیم داشت: 67-65=2. پس عدد 2 در خروجی چاپ میشود.
خط 5: یک شی جدید از کلاس Program ایجاد میشود و در نتیجه آن، بلوک مقداردهی اولیه هم اجرا شده و مقدار متغیر استاتیک i برابر با 64 میشود.
خط 6: خواهیم داشت: 66-64=2. پس عدد 2 در خروجی چاپ میشود.
چند نکته:
📌 با load کلاس در حافظه، متغیرهای استاتیک مقداردهی میشوند.
📌 هرگاه یک شی جدید ایجاد شود، بلوک مقداردهی اولیه اجرا میشود. پیشنهاد میشه اسلایدهای جلسه ۶ آموزش جاوا از صفحه ۲۲ تا ۲۷ را مرور کنید.
http://javacup.ir/wp-content/uploads/2015/08/06_ObjectsLifeCycle.pdf
#دستگرمی_سهشنبه
@JavaCupIR
برای رسیدن به خروجی، متد method را خط به خط بررسی میکنیم:
خط 1: متغیرهای t1 و t2 هنوز new نشدهاند.
خط 2: متغیر i برابر با 66 است بنابراین l1 برابر با 66 میشود. در مورد ++l2=l1، باید توجه داشت که چون ++بعد از اسم متغیر آمده، ابتدا l2 برابر با l1 یعنی 66 میشود و سپس مقدار l1 یک واحد افزایش یافته و برابر با 67 میشود. بنابراین در انتهای اجرای این خط، داریم: l1=67 و l2=66
خط 3: یک شی جدید از کلاس Program ایجاد میشود و در نتیجه آن بلوک مقداردهی اولیه هم اجرا شده و مقدار متغیر استاتیک i برابر با 65 میشود.
خط 4: خواهیم داشت: 67-65=2. پس عدد 2 در خروجی چاپ میشود.
خط 5: یک شی جدید از کلاس Program ایجاد میشود و در نتیجه آن، بلوک مقداردهی اولیه هم اجرا شده و مقدار متغیر استاتیک i برابر با 64 میشود.
خط 6: خواهیم داشت: 66-64=2. پس عدد 2 در خروجی چاپ میشود.
چند نکته:
📌 با load کلاس در حافظه، متغیرهای استاتیک مقداردهی میشوند.
📌 هرگاه یک شی جدید ایجاد شود، بلوک مقداردهی اولیه اجرا میشود. پیشنهاد میشه اسلایدهای جلسه ۶ آموزش جاوا از صفحه ۲۲ تا ۲۷ را مرور کنید.
http://javacup.ir/wp-content/uploads/2015/08/06_ObjectsLifeCycle.pdf
#دستگرمی_سهشنبه
@JavaCupIR
انجمن جاواکاپ
Photo
اسلایدها و فایل صوتی کارگاه آموزشی 《عملیات معماری نرمافزار》 منتشر شد.
http://asta.ir/software-architecture
@JavaCupIR
http://asta.ir/software-architecture
@JavaCupIR
This media is not supported in your browser
VIEW IN TELEGRAM
وقتی رو کد دوستت کار میکنی 😡
@JavaCupIR
@JavaCupIR
در نظرسنجی زیر شرکت کنید.
پنجشنبه پاسخ صحیح را اعلام کرده و توضیح میدهیم.
#دستگرمی_سهشنبه
@JavaCupIR
پنجشنبه پاسخ صحیح را اعلام کرده و توضیح میدهیم.
#دستگرمی_سهشنبه
@JavaCupIR
به نظر شما، خروجی برنامه فوق کدام گزینه است؟
Final Results
6%
1
4%
2
7%
3
46%
10
6%
11
24%
12
1%
19
4%
20
#مقاله
انواع روشهای مرتبسازی مجموعهها با استفاده از عبارات لامبدا
http://bit.ly/sorting-lambda
@JavaCupIR
انواع روشهای مرتبسازی مجموعهها با استفاده از عبارات لامبدا
http://bit.ly/sorting-lambda
@JavaCupIR
انجمن جاواکاپ
به نظر شما، خروجی برنامه فوق کدام گزینه است؟
پاسخ صحیح: 10
برای رسیدن به پاسخ صحیح، متد main را خط به خط بررسی میکنیم:
خط ۷: سه شی مختلف ایجاد شده و در آرایهای از نوع Object ریخته میشوند. میدانید که در جاوا، کلاس Object پدر تمام کلاسها است.
خط ۸: متغیر result با مقدار اولیه 0 ایجاد شده.
خط ۹: به ازای هر یک از اشیای موجود در آرایه objs، بدنه این حلقه اجرا میشود و مهم است بفهمیم که در هر بار اجرا، مقدار متغیر result چه تغییری میکند.
• اجرای اول:
obj = “”
در خط 11، رشته خالی نمونهای از B نبوده و قابل Cast شدن به A هم نیست. بنابراین، ClassCastException پرتاب شده و خط 14 اجرا میشود. به این ترتیب، result = 1 خواهد بود.
• اجرای دوم:
obj = new D()
در خط 11، obj نمونهای از D است و در نتیجه از نوع B نیز هست؛ بنابراین Cast میشود به B.
ولی بههرحال obj از نوع D است و در خط 12، متد f از کلاس D اجرا میشود. در نتیجه مقدار result برابر با 11 خواهد شد.
• اجرای سوم:
obj = null
در اثر اجرای خط 11، مقدار test هم برابر null میشود. پس در خط 12 استثنای NullPointerException پرتاب میشود و مقدار result یک واحد کم شده برابر با 10 میشود.
خط 19: مقدار 10 در خروجی چاپ میشود.
#دستگرمی_سهشنبه
@JavaCupIR
برای رسیدن به پاسخ صحیح، متد main را خط به خط بررسی میکنیم:
خط ۷: سه شی مختلف ایجاد شده و در آرایهای از نوع Object ریخته میشوند. میدانید که در جاوا، کلاس Object پدر تمام کلاسها است.
خط ۸: متغیر result با مقدار اولیه 0 ایجاد شده.
خط ۹: به ازای هر یک از اشیای موجود در آرایه objs، بدنه این حلقه اجرا میشود و مهم است بفهمیم که در هر بار اجرا، مقدار متغیر result چه تغییری میکند.
• اجرای اول:
obj = “”
در خط 11، رشته خالی نمونهای از B نبوده و قابل Cast شدن به A هم نیست. بنابراین، ClassCastException پرتاب شده و خط 14 اجرا میشود. به این ترتیب، result = 1 خواهد بود.
• اجرای دوم:
obj = new D()
در خط 11، obj نمونهای از D است و در نتیجه از نوع B نیز هست؛ بنابراین Cast میشود به B.
ولی بههرحال obj از نوع D است و در خط 12، متد f از کلاس D اجرا میشود. در نتیجه مقدار result برابر با 11 خواهد شد.
• اجرای سوم:
obj = null
در اثر اجرای خط 11، مقدار test هم برابر null میشود. پس در خط 12 استثنای NullPointerException پرتاب میشود و مقدار result یک واحد کم شده برابر با 10 میشود.
خط 19: مقدار 10 در خروجی چاپ میشود.
#دستگرمی_سهشنبه
@JavaCupIR
در نظرسنجی زیر شرکت کنید.
پنجشنبه پاسخ صحیح را اعلام کرده و توضیح میدهیم.
پ ن: گول شلوغی رو نخورید، خیلی سادهست!
#دستگرمی_سهشنبه
@JavaCupIR
پنجشنبه پاسخ صحیح را اعلام کرده و توضیح میدهیم.
پ ن: گول شلوغی رو نخورید، خیلی سادهست!
#دستگرمی_سهشنبه
@JavaCupIR
به نظر شما، خروجی برنامه فوق کدام گزینه است؟
Final Results
16%
winter
17%
spring
41%
summer
10%
winter summer
16%
spring summer
همه ما ممکن است بر روی پروژههای مختلفی کار کنیم که هر کدام نیازمند نسخههای مختلف جاوا باشند.
گاهی هم نیاز است برای رفع یک مشکل کوچک یا اضافه کردن یک ویژگی، سراغ پروژههای قدیمی که با نسخههای ۶ یا ۷ جاوا کار میکنند برویم.
با کمک SDKMAN، کار جابجایی بین نسخههای مختلف جاوا بسیار راحتتر خواهد بود. در #مقاله زیر، با این ابزار آشنا خواهید شد.
http://bit.ly/SDKMan
@JavaCupIR
گاهی هم نیاز است برای رفع یک مشکل کوچک یا اضافه کردن یک ویژگی، سراغ پروژههای قدیمی که با نسخههای ۶ یا ۷ جاوا کار میکنند برویم.
با کمک SDKMAN، کار جابجایی بین نسخههای مختلف جاوا بسیار راحتتر خواهد بود. در #مقاله زیر، با این ابزار آشنا خواهید شد.
http://bit.ly/SDKMan
@JavaCupIR
فرض کنید کلیه متدهایی که در کلاسهای Parent و Child صدا شدهاند، در کلاس Utility تعریف شدهاند و در داخل هر یک از این متدها، شماره اسم آن متد در خروجی چاپ میشود. مثلا در داخل متد f عدد در خروجی چاپ میشود (زیرا f در بین حروف الفبا ۶امین حرف است).
پنجشنبه پاسخ صحیح را اعلام کرده و توضیح میدهیم.
پ ن: این سوال در آزمون جاواکاپ ۹۷ آمده بود.
#دستگرمی_سهشنبه
@JavaCupIR
پنجشنبه پاسخ صحیح را اعلام کرده و توضیح میدهیم.
پ ن: این سوال در آزمون جاواکاپ ۹۷ آمده بود.
#دستگرمی_سهشنبه
@JavaCupIR
با این توضیحات، خروجی برنامه زیر کدام گزینه است؟
Final Results
0%
12673458910 12673458910
55%
12673458910 3458910
18%
67129843510 6798510
15%
21764398510 4398105
5%
21764359810 4359810
8%
16273849510 3849510
انجمن جاواکاپ
با این توضیحات، خروجی برنامه زیر کدام گزینه است؟
پاسخ صحیح:
12673458910 3458910
مشاهده توضیحات تکمیلی:
javacup.ir/dastgarmi-
#دستگرمی_سهشنبه
@JavaCupIR
12673458910 3458910
مشاهده توضیحات تکمیلی:
javacup.ir/dastgarmi-
#دستگرمی_سهشنبه
@JavaCupIR
#معرفی
برای اتصال به مخزنهای #گیت، ابزارهایی با واسط گرافیکی جذاب و ساده وجود دارد که در واقع کلاینتِ گیت هستند.
یکی از ابزارهای معروف در این زمینه، #GitKraken نام دارد که قابلیت اتصال به سرویسهایی مانند GitHub و Gitlab را دارد.
این کلاینتِ گیت، برای سیستمعاملهای ویندوز، مَک و لینوکس در دسترس است و برای استفادههای شخصی، نسخه #رایگان نیز دارد.
https://www.gitkraken.com/
@JavaCupIR
برای اتصال به مخزنهای #گیت، ابزارهایی با واسط گرافیکی جذاب و ساده وجود دارد که در واقع کلاینتِ گیت هستند.
یکی از ابزارهای معروف در این زمینه، #GitKraken نام دارد که قابلیت اتصال به سرویسهایی مانند GitHub و Gitlab را دارد.
این کلاینتِ گیت، برای سیستمعاملهای ویندوز، مَک و لینوکس در دسترس است و برای استفادههای شخصی، نسخه #رایگان نیز دارد.
https://www.gitkraken.com/
@JavaCupIR