编程思想_复用类

1、复用的两种方式?

  • 组合。只需要在新的类中产生现有类的对象。
  • 继承。按照现有的类型来创建新的类。无需改变现有类的形式,采用现有类的形式并在其中添加新的代码。super关键字。extends关键字。

2、什么情况使用组合,什么时候又要使用继承呢?

判断方法就是问一问自己是否需要从新类向基类进行向上转型。如果必须向上转型,则继承是必要的。

3、final关键字

  • final 数据
  • final 方法
  • final 参数
  • final 类

4、继承及初始化

5、代理

设计模式里面有个比较难懂的——代理模式,作者讲的很有趣,代理是组合和继承的中庸之道。

package son;
class Father{
    public void get(){
        System.out.println("father");
    }
}
public class Son extends Father{
    public static void main(String[] args) {
        Father f = new Father();
        f.get();
    }
}
 
class FatherProxy{
    private Father f = new Father();
    public void get(){
        f.get();
    }
}

像直接把Father当做成员,那么father的方法就暴露给这个类了,那我们可以使用FatherProxy这样的代理类,我自己定义好get方法是怎么拿的,我自己知道是调用father的get方法,但是使用我这个代理的人不知道,我只告诉他你要用就用代理的get的方法就可以了。封装性就体现出来了。上面只是随便敲的一个简单例子。

6、继承的作用

  • 继承的出现提高了代码的复用性。
  • 继承的出现让类与类之间产生了关系,提供了多态的前提。
  • 不要仅为了获取其他类中某个功能而去继承
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值