รูปแบบ (เทมเพลต) ของการมอบหมาย - ลองดูตัวอย่างที่ง่ายที่สุด มีคลาส
А
ที่มีวิธีการบางf
อย่าง คลาส เป็นคลาส ภายใน А
ที่ไม่คงที่ของคลาสMy
public class My{
public static void main(String[]args){
My test = new My();
My.A a1 = test.new A();
a1.f();
My.B b = test.new B();
b.f();
}
class A{
void f(){
System.out.println("f");
}
}
}
จากนั้นเราจะพิมพ์ไปที่คอนโซลว่าวิธีการนี้ทำf
อะไร เมื่อต้องการทำ เช่น นี้ main
ให้สร้างคลาสอ็อบเจ็กต์ในเมธอดА
แล้วเรียกเมธอด f
ตอนนี้เรามาสร้างชั้นเรียนB
กัน เราต้องการให้มันทำเหมือนกับ class แต่เราจะ ไม่ А
ทำซ้ำโค้ดและเราจะไม่ใช้การสืบทอดเช่นกัน แต่ในคลาส เรา В
จะสร้างอ็อบเจ็กต์ของ class А
จากนั้นВ
เรียกเมธอด class ในเมธอด classА
class B{
A a = new A();
void f(){
a.f();
}
}
ชั้นเรียนВ
มอบหมายการดำเนินการของงานบางอย่างให้กับชั้นเรียนอื่น В
ในกรณีนี้А
คลาส
GO TO FULL VERSION