Umarım bu, üniversitem sırasında oops'ta (çekirdek java) öğrendiklerime biraz yardımcı olur.
Uygulamalar, bir arayüzün yöntemleri için bir uygulama tanımlamayı belirtir. Ancak arayüzlerin uygulaması yoktur, bu yüzden bu mümkün değildir. Ancak bir arabirim başka bir arabirimi genişletebilir, bu da daha fazla yöntem ekleyebileceği ve türünü devralabileceği anlamına gelir.
İşte aşağıda bir örnek, bu benim anlayışım ve oops'ta öğrendiklerim.
interface ParentInterface{
void myMethod();
}
interface SubInterface extends ParentInterface{
void anotherMethod();
}
ve bir şeyi aklınızda bulundurun bir arayüz yalnızca başka bir arayüzü genişletebilir ve eğer bir sınıfta onun işlevini tanımlamak istiyorsanız, o zaman sadece uygulanan bir arayüz, örneğin aşağıda
public interface Dog
{
public boolean Barks();
public boolean isGoldenRetriever();
}
Şimdi, bir sınıf bu arayüzü uygulayacak olsaydı, şöyle görünürdü:
public class SomeClass implements Dog
{
public boolean Barks{
// method definition here
}
public boolean isGoldenRetriever{
// method definition here
}
}
ve eğer soyut bir sınıfın tanımla ve bildirmek için soyut bir işlevi varsa ve bu işlevi tanımlamak istiyorsanız veya bu işlevi uygula diyebilirsiniz, o zaman bu sınıfı genişletmeyi varsayarsınız çünkü soyut sınıf yalnızca genişletilebilir. İşte aşağıdaki örnek.
public abstract class MyAbstractClass {
public abstract void abstractMethod();
}
İşte MyAbstractClass'ın örnek bir alt sınıfı:
public class MySubClass extends MyAbstractClass {
public void abstractMethod() {
System.out.println("My method implementation");
}
}