CodeGym /وبلاگ جاوا /Random-FA /سوالات پیچیده جاوا که اغلب در مصاحبه ها پرسیده می شود
John Squirrels
مرحله
San Francisco

سوالات پیچیده جاوا که اغلب در مصاحبه ها پرسیده می شود

در گروه منتشر شد
اگر تا به حال برای یک مصاحبه برای موقعیت برنامه نویس جاوا آماده شده اید یا هر آزمون گواهینامه (نه لزوماً در مورد برنامه نویسی) را گذرانده اید، احتمالاً قبلاً متوجه شده اید که سؤالات پرسیده شده در آنجا بسیار خاص هستند. بسیاری از آنها شما را مجبور می کنند در مورد طراحی زبان فکر کنید. برخی برای بررسی عمق دانش شما طراحی شده اند. سوالاتی وجود دارد که بیش از هر چیز دیگری شبیه پازل هستند، در حالی که برخی دیگر به نکات ظریف زبان مربوط می شوند که درک آنها بدون تمرین بسیار دشوار است. در این مقاله، توسعه دهنده Sarans Sing چند سوال از این قبیل در مورد جاوا ارائه می کند. البته با جواب سوالات پیچیده جاوا که اغلب در مصاحبه ها پرسیده می شود - 11. اگر یک عبارت return یا System.exit() را در یک بلوک try/catch قرار دهم چه اتفاقی می افتد؟ این یک سوال بسیار محبوب و ظریف جاوا است. ترفند این است که بسیاری از برنامه نویسان معتقدند که finallyبلوک همیشه اجرا می شود. با قرار دادن یک returnعبارت در یک try/catchبلوک یا فراخوانی System.exit()از داخل یک try/catchبلوک، این سؤال این باور را زیر سؤال می برد. پاسخ به این سوال پیچیده این است: بلوک زمانی که دستوری در یک بلوک قرار می‌گیرد finallyاجرا می‌شود ، اما زمانی که از داخل یک بلوک فراخوانی می‌شود ، اجرا نمی‌شود . 2. آیا جاوا از وراثت چندگانه پشتیبانی می کند؟ این یک سوال بسیار مشکل است. مصاحبه کنندگان اغلب می پرسند، "اگر C ++ از وراثت مستقیم چندگانه پشتیبانی می کند، پس چرا جاوا نمی تواند؟" پاسخ کمی پیچیده تر از آن چیزی است که به نظر می رسد، زیرا جاوا از وراثت چند نوع پشتیبانی می کند . پس از همه، یک رابط جاوا می تواند رابط های دیگر را گسترش دهد. گفتنی است، جاوا از وراثت چندگانه پیاده سازی ها پشتیبانی نمی کند. 3. اگر متدی در یک کلاس والد s را پرتاب کند، آیا می توان آن را با متدی که s را پرتاب می کند لغو کرد؟ این یکی دیگر از سوالات پیچیده مربوط به اضافه بار و نادیده گرفتن است. پاسخ: یک روش لغو شده می‌تواند با خیال راحت کلاس والد - RuntimeException را پرتاب کند، اما شما نمی‌توانید این کار را با یک نوع استثنای علامت‌گذاری شده مانند . 4. چگونه تضمین می کنید که موضوعات می توانند بدون بن بست به منابع دسترسی پیدا کنند؟ اگر نوشتن کد چند رشته ای نقطه قوت شما نیست، ممکن است واقعاً به این سؤال دچار شوید. حتی برای یک برنامه نویس باتجربه که با بن بست ها و شرایط مسابقه مواجه نشده است، می تواند دشوار باشد. کل ترفند در اینجا به ترتیب است: شما می توانید با انتشار منابع به ترتیب معکوس که به دست آمده اند، از بن بست جلوگیری کنید. 5. تفاوت کلاس ها و در جاوا چیست؟ این یک سوال کلاسیک زبان جاوا است که برخی از توسعه دهندگان آن را مشکل و برخی دیگر بسیار ساده می دانند. اینreturntry/catchSystem.exit()try/catchNullPointerExceptionRuntimeExceptionNullPointerExceptionExceptionNNStringBufferStringBuilderStringBuilderکلاس در JDK 1.5 ظاهر شد. تنها تفاوت بین این کلاس ها این است که StringBufferمتدهای 's، مانند length()، capacity()و append()، همگام هستند، در حالی که متدهای مربوطه در این گونه StringBuilderنیستند. این تفاوت اساسی به این معنی است که الحاق رشته با سریعتر StringBuilderاز با است StringBuffer. در واقع، استفاده از آن StringBufferتوصیه نمی شود، زیرا الحاق رشته ها در 99٪ مواقع روی یک رشته انجام می شود. 6. نتیجه ارزیابی عبارت 1.0/0.0 چیست؟ آیا یک استثنا ایجاد می کند یا یک خطای کامپایل؟ این یکی دیگر از سوالات پیچیده در مورد کلاس است. توسعه دهندگان جاوا از وجود یک نوع داده دوگانه اولیه و یک کلاس آگاه هستند ، اما هنگام انجام عملیات ممیز شناور به , , و قوانین حاکم بر محاسبات حسابی مرتبط توجه کافی نمی کنند. پاسخ به این سوال ساده است: an پرتاب نخواهد شد. عبارت به . 7. اگر بخواهید کلیدی را در کلیدی که قبلاً حاوی آن کلید است وارد کنید، چه اتفاقی می‌افتد؟ این سؤال پیچیده بخشی از سؤال متداول دیگری است: چگونه در جاوا کار می کند؟ منبع محبوب سوالات گیج کننده و پیچیده در مورد جاوا است. پاسخ این است: اگر بخواهید یک کلید را دوباره در یک وارد کنید ، کلید قدیمی جایگزین خواهد شد، زیرا کلاس اجازه کلیدهای تکراری را نمی دهد. و همان کلید همان کد هش را دریافت می کند، به این معنی که در همان مکان در سطل هش قرار می گیرد. بر اساس مواد Quora سوالات پیچیده جاوا که اغلب در مصاحبه ها پرسیده می شود - 2 DoubleDoubleDouble.POSITIVE_INFINITYDouble.NEGATIVE_INFINITYNaN-0.0ArithmeticExceptionDouble.POSITIVE_INFINITYHashMapHashMapHashMapHashMapHashMap
نظرات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION