เป็นวิธีปฏิบัติที่ดีในการใช้คำเตือนในรหัสของคุณหรือไม่?
ฉันใช้@SuppressWarnings("unchecked")และ@SuppressWarnings("null")ส่วนใหญ่วิธีการข้างต้นเพื่อให้รหัสรวบรวมโดยไม่มีคำเตือนใด ๆ แต่ฉันมีข้อสงสัยของฉัน พบคำถาม Stackoverflow นี้ Jon Skeet เขียนคำตอบที่ฉันพบว่าน่าสนใจ ตามที่เขาพูด บางครั้ง generics Java ก็ไม่ยอมให้คุณทำสิ่งที่คุณต้องการและคุณต้องบอกคอมไพเลอร์อย่างมีประสิทธิภาพว่าสิ่งที่คุณทำจริงๆจะถูกกฎหมายในเวลาดำเนินการ แต่ถ้ามีโอกาสที่ข้อยกเว้นจะถูกโยนทิ้งไปล่ะ? การระงับคำเตือนเป็นความคิดที่ไม่ดีใช่ไหม ฉันไม่ควรทราบเกี่ยวกับสถานที่ซึ่งปัญหาอาจปรากฏหรือไม่ นอกจากนี้จะเกิดอะไรขึ้นถ้ามีคนอื่นแก้ไขโค้ดของฉันในภายหลังและเพิ่มฟังก์ชันการทำงานที่น่าสงสัยโดยไม่ลบ SuppressWarnings จะสามารถหลีกเลี่ยงและ / หรือมีทางเลือกอื่นในการนี้ได้อย่างไร? ฉันควรจะใช้@SuppressWarnings("unchecked")และ@SuppressWarnings("null")? อัปเดต # 1 เท่าที่ประเภทที่ไม่ได้เลือกได้ปลดเปลื้องไปตามคำตอบนี้(ชี้ให้เห็นโดย @gnat ในความคิดเห็นด้านล่าง) การปราบปรามคำเตือนเหล่านี้เป็นสิ่งที่จำเป็น ห้องสมุด Java ที่ขาดไม่ได้หลายแห่งไม่เคยมีการอัพเดทเพื่อกำจัดความต้องการ typecasts ที่ไม่ปลอดภัย การระงับคำเตือนเหล่านั้นเป็นสิ่งที่จำเป็นเพื่อให้คำเตือนที่สำคัญอื่น ๆ จะได้รับการสังเกตและแก้ไข ในกรณีที่มีการระงับคำเตือนอื่น ๆ ยังคงอยู่ในพื้นที่สีเทาเล็กน้อย อัปเดต # 2 ตามเอกสาร Oracle (กล่าวถึงบางคำตอบด้านล่าง): โปรแกรมเมอร์ควรใช้คำอธิบายประกอบนี้กับองค์ประกอบที่ซ้อนกันมากที่สุดซึ่งมีประสิทธิภาพ หากคุณต้องการระงับคำเตือนในวิธีใดวิธีหนึ่งคุณควรใส่คำอธิบายประกอบวิธีนั้นแทนการเรียน