委托与继承学习笔记

我们开始想要进行多种实现,实现多种功能时,学习的是继承父类或接口,对方法进行重写,重载等方式进行功能完善。

不过除了继承,还有一种方式可以更灵活地实现多种功能,那就是委托。这两种方式都能提高代码的可复用性。

不过,委托是通过一个对象请求另一个对象的功能,捕获一个操作并将其发送到另一个对象进行的。

委托属于动态绑定,可以调用不同时段的方法和代码段

public class Test {
    void activity(){
        this.testJob();
    }
    void testJob() {
        System.out.println("This is achieved by test");
    }
}


public class Students{
    
    private Test test;

    public Students(Test t){
       this.test = t;
    }

    void studentsTest(){
        test.testJob();
    }

    void activity(){
        System.out.println("this is achieved by students");
    }

    public static void main(){
        Test test = new Test();
        Students student = new Students(test);
        student.studentsTest();
        student.activity();
    }
}

输出就是

This is achieved by test
this is achieved by students
posted @ 2020-07-10 23:18  羽生的老婆  阅读(103)  评论(0)    收藏  举报