ฉันไม่คิดว่าจะทำได้ ฉันสงสัยว่าคุณลักษณะนี้ถูกละทิ้งจาก IDE โดยเจตนาเนื่องจากไม่สามารถใช้งานได้อย่างปลอดภัยในแบบที่ "ลบการปรับแต่ง XXX ที่ไม่ได้ใช้" อื่น ๆ สามารถทำได้
IDEA การประกาศที่ไม่ได้ใช้ (และ AFAIK, NetBeans) มองหามีไว้สำหรับสมาชิกส่วนตัวและตัวแปรท้องถิ่น: สิ่งที่ไม่สามารถเข้าถึงได้แม้ในแบบไดนามิกจากภายนอกคลาสหรือขอบเขตนั้น (อย่างน้อยก็ไม่มีการทำสิ่งต่างๆด้วยการแฮ็ก Reflection หรือ JVM ที่คุณไม่ควรทำ) ไม่ว่าโค้ดภายนอกจะทำอะไรกับไลบรารีของคุณก็จะไม่ทำให้สิ่งเหล่านั้นถูกนำไปใช้เนื่องจากขอบเขตมี จำกัด และ IDE สามารถดูได้ทั้งหมด คอมไพเลอร์สามารถกำหนดสิ่งนี้ได้โดยดูแค่โค้ดของคุณ
สำหรับชั้นเรียนแม้ว่าจะไม่มีpublic
สิทธิ์เข้าถึง แต่ก็สามารถอ้างอิงได้แบบไดนามิกด้วยClass.forName()
และสิ่งนี้เกิดขึ้นจริงในโค้ดสด ดังนั้นแม้ว่าจะไม่เห็นได้ชัดว่ามีการใช้โค้ดในโครงการของคุณ แต่ก็อาจถูกใช้ขึ้นอยู่กับสิ่งที่คุณหรือโค้ดภายนอกที่ใช้ไลบรารีของคุณเรียกใช้ ดังนั้น IDE จึงไม่สามารถรับประกันได้ว่าการลบคลาสเหล่านั้นจะไม่เปลี่ยนพฤติกรรมที่สังเกตได้จากภายนอก
ด้วยเหตุนี้ฉันจึงคิดว่า IDEA ไม่ได้ให้พฤติกรรมนี้มันอาจทำให้ผู้ใช้คาดหวังเรื่องความปลอดภัยที่ผิดพลาดและการลบออกไม่ใช่การปรับโครงสร้างใหม่อย่างปลอดภัย