# 重写或继承的选择 * 什么时候选择继承? 通常是这个类在原产品代码中,就是作为核心通用类,比如UIButton,这种我们就只需要在FineKit中继承 ```java com.fr.design.gui.ibutton.UIButton ``` 实现一个对外开放的按钮类 ```java com.fanruan.api.design.ui.component.UIButton ``` 这种方式适用于父类会被大量修改的可能性很小的情况。 * 什么时候选择重写? 通常是和业务相关性比较紧密的类,比如ConnectionComboBoxPanel,该类用于选择在数据集界面中选择数据连接,属于一个业务类, 这种情况我们就不选择继承,而是重新在FineKit中实现一个全新的开放类 ```java com.fanruan.api.design.work.onnectionComboBoxPanel ```