المثال الأول
في هذا المثال قمنا بتعريف إثنين إنترفيس A
و B
:
- الإنترفيس
A
يملك دالة إسمها printA()
.
- الإنترفيس
B
يملك دالة إسمها printB()
.
ثم قمنا بتعريف كلاس إسمه C
و قلنا أن C
ينفذ A
و B
.
A.java
public interface A {
void printA();
}
B.java
public interface B {
void printB();
}
C.java
public class C implements A, B { // لجميع الدوال التي ورثها Override إذاً يجب أن يفعل B و الإنترفيس A ينفذ الإنترفيس C هنا الكلاس
@Override // printA() للدالة Override مجبور أن يفعل C الكلاس
void printA() {
System.out.println("C should Override the method printA()");
}
@Override // printB() للدالة Override مجبور أن يفعل C الكلاس
void printB() {
System.out.println("C should Override the method printB()");
}
}
المثال الثاني
في هذا المثال قمنا بتعريف إنترفيس A
يملك دالة إسمها printA()
.
و إنترفيس B
يرث من الإنترفيس A
و يملك دالة إسمها printB()
.
ثم قمنا بتعريف كلاس إسمه C
يطبق الإنترفيس B
, و بالتالي عليه أن يفعل Override لجميع الدوال التي ورثها.
A.java
public interface A {
void printA();
}
B.java
public interface B extends A {
void printB();
}
C.java
public class C implements B { // printB() و printA() للدالتين Override إذاً يجب أن يفعل .B و الذي بدوره يرث من الإنترفيس B يطبق من الإنترفيس C هنا الكلاس
@Override // printA() للدالة Override مجبور أن يفعل C الكلاس
void printA() {
System.out.println("C should Override the method printA()");
}
@Override // printB() للدالة Override مجبور أن يفعل C الكلاس
void printB() {
System.out.println("C should Override the method printB()");
}
}
المثال الثالث
في هذا المثال قمنا بتعريف إنترفيس A
يملك دالة إسمها printA()
.
و كلاس B
يملك دالة إسمها printB()
.
ثم قمنا بتعريف كلاس إسمه C
يرث من B
و ينفذ A
.
A.java
public interface A {
void printA();
}
B.java
public class B {
void printB() {
System.out.println("C not need to Override the method printB()");
}
}
C.java
public class C extends B implements A { // A و ينفذ الإنترفيس B يرث من الكلاس C هنا الكلاس
@Override // printA() للدالة Override مجبور أن يفعل C الكلاس
void printA() {
System.out.println("C should Override the method printA()");
}
}