अमूर्त कक्षाएं और इंटरफेस जावा में एक अनुबंध के निर्माण के लिए दो प्राथमिक विधियां हैं जो लागू करने वाली कक्षाओं पर एक निश्चित व्यवहार को लागू करती हैं। इसके विपरीत, आप एक अमूर्त अनुबंध को सीधे उदाहरण नहीं दे सकते हैं; आपको इसे विस्तार करना होगा और पहले इसकी सभी विधियों को लागू करना होगा। दूसरी ओर, एक अमूर्त वर्ग केवल अमूर्त विधियों, विधियों या स्थैतिक विधियों को लागू करने की अनुमति देने वाले एक अमूर्त रूप को परिभाषित करता है। यह एक प्रकार के इंटरफेस के रूप में कार्य करता है जिसे लागू किया जाना चाहिए जो इंटरफेस द्वारा निर्दिष्ट किए गए विशिष्ट विशेषताओं का समर्थन करने का दावा करता है।
अमूर्त वर्गों और इंटरफेस के बीच अंतर करें