ฉันมีClass
วัตถุ ฉันต้องการตรวจสอบว่าประเภทที่Class
วัตถุแสดงใช้อินเทอร์เฟซเฉพาะหรือไม่ ฉันสงสัยว่าจะทำได้อย่างไร?
ฉันมีรหัสต่อไปนี้ โดยทั่วไปสิ่งที่ทำคือรับอาร์เรย์ของคลาสทั้งหมดในแพ็คเกจที่ระบุ จากนั้นฉันต้องการดูอาร์เรย์และเพิ่มวัตถุคลาสที่ใช้อินเทอร์เฟซในแผนที่ของฉัน ปัญหาคือisInstance()
ใช้วัตถุเป็นพารามิเตอร์ ฉันไม่สามารถสร้างอินเทอร์เฟซได้ ดังนั้นฉันจึงแพ้กับสิ่งนี้ ความคิดใด ๆ ?
Class[] classes = ClassUtils.getClasses(handlersPackage);
for(Class clazz : classes)
{
if(clazz.isInstance(/*Some object*/)) //Need something in this if statement
{
retVal.put(clazz.getSimpleName(), clazz);
}
}