सबसे पहले, इंटरफेस संरचना बाहरी दुनिया को संचारित करने के लिए लागू कक्षाओं में इंटरफ़ेस प्रदान करती है। आसान उदाहरण एक टेलीविजन होगा। टेलीविजन एक वर्ग है और इसके बटन बटन इंटरफेस हैं।
इंटरफेस का उपयोग करने का adv:
1-जावा एकाधिक वंशानुक्रम समर्थन नहीं करता। यदि हम विभिन्न वर्गों से दो अलग-अलग तरीकों को जोड़ना चाहते हैं तो हम नहीं कर सकते (क्लासए, कक्षाबी का विस्तार) संभव नहीं है ए, बी कोई समस्या नहीं है।
2- दूसरी सलाह एक सुरक्षा और लचीलापन है एक उदाहरण होने के लिए दिया जा सकता है यदि हम चाहते हैं कि कक्षा के कुछ तरीके पहुंच योग्य नहीं हैं तो हम यह कैसे कर सकते हैं? बहुरूपता + इंटरफ़ेस हम कर सकते हैं कि अगर हम पैदल दूरी पर नहीं करना चाहते हैं और छाल तरीकों पहुँच योग्य नहीं होना चाहिए
abstract class Animal {
String name;
int age;
public Animal(String name, int age) {
super();
this.name = name;
this.age = age;
}
}
class Dog extends Animal implements Run {
public Dog(String name, int age) {
super(name, age);
// TODO Auto-generated constructor stub
}
@Override
public void run() {
// TODO Auto-generated method stub
}
public void bark() {
}
}
class Cat extends Animal implements Climb {
public Cat(String name, int age) {
super(name, age);
}
@Override
public void climb() {
// TODO Auto-generated method stub
}
public void walk() {
}
}
public class Main {
public static void main(String[] args) {
// if we want that some of methods of the class are not reachable how
// can we do that?
// polymorphism + interface we can do that
// for example if we do not want walk and bark methods should be
// unreachable
Climb cat = new Cat("boncuk", 5);
Run dog = new Dog("karabas", 7);
// see we cannot reach the method walk() or bark()
dog.walk(); // will give an error. since there is no such a method in the interface.
}
}}
enter code here
देखने के लिए कृपया इस [सवाल] (http://stackoverflow.com/questions/219425/interface-contract- वर्ग-वस्तु)। –