আমি ব্যবহার @SuppressWarnings("unchecked")
এবং @SuppressWarnings("null")
বেশিরভাগ পদ্ধতি উপরে কোনো সতর্কবার্তা ছাড়া কোড কম্পাইল যাক কিন্তু আমি আমার সন্দেহ আছে। এই স্ট্যাকওভারফ্লো প্রশ্নটি পেয়েছে । জন স্কিটি এর উত্তর লিখেছিল যা আমি আকর্ষণীয় মনে করি।
তার মতে,
কখনও কখনও জাভা জেনেরিকগুলি আপনাকে যা করতে চান তা করতে দেয় না এবং আপনাকে সংকলককে কার্যকরভাবে বলতে হবে যে আপনি যা করছেন তা কার্যকর করার সময় আইনী হবে।
তবে যদি কোনও ব্যতিক্রম ছুঁড়ে ফেলার সম্ভাবনা থাকে তবে কী হবে? সতর্কতাগুলি দমন করা কি তখন একটি খারাপ ধারণা নয়? যে জায়গাগুলিতে সমস্যা দেখা দিতে পারে সে জায়গাগুলি সম্পর্কে আমার সচেতন হওয়া উচিত নয়?
এছাড়াও, যদি অন্য কেউ আমার কোডটি পরে সংশোধন করে এবং সাপ্রেস ওয়ার্নিংস না সরিয়ে কিছু সন্দেহজনক কার্যকারিতা যুক্ত করে? কীভাবে তা এড়ানো যায় এবং / অথবা এর অন্য কোনও বিকল্প আছে?
আমি ব্যবহার করা উচিত @SuppressWarnings("unchecked")
এবং @SuppressWarnings("null")
?
আপডেট # 1
এই উত্তর অনুসারে (নিচের মন্তব্যগুলিতে @ জাগান্ট দ্বারা নির্দেশিত) অনুসারে, যাচাই না করা ধরণের কাস্টগুলি যেতে পারে, এই সতর্কতাগুলি দমন করা প্রয়োজনীয়।
অনিরাপদ টাইপকাস্টের প্রয়োজনীয়তা অপসারণ করতে অনেকগুলি অনিবার্য জাভা গ্রন্থাগার কখনও আপডেট করা হয়নি। এই সতর্কতাগুলিকে দমন করা প্রয়োজনীয় যাতে আরও অন্যান্য গুরুত্বপূর্ণ সতর্কতাগুলি লক্ষ্য করা যায় এবং সংশোধন করা যায়।
অন্যান্য সতর্কতাগুলি দমন করার ক্ষেত্রে, এখনও ধূসর কিছু জায়গায়।
আপডেট # 2
অনুযায়ী ওরাকল ডক্স (এছাড়াও নিচের কিছু উত্তর উল্লেখ):
শৈলীর বিষয় হিসাবে, প্রোগ্রামারদের সর্বদা এই টীকাটি সবচেয়ে গভীরভাবে নেস্টেড উপাদানটিতে ব্যবহার করা উচিত যেখানে এটি কার্যকর। আপনি যদি কোনও নির্দিষ্ট পদ্ধতিতে কোনও সতর্কতা দমন করতে চান তবে আপনার সেই পদ্ধতিটি শ্রেণীর পরিবর্তে বর্ণিত করা উচিত।