1.两个完全不一样的功能就不应该放在一个类中,一个类应该是一组相关性很高的函数,数据的封装。
2 ①开闭原则:软件中的对象(类,模块,函数等)应该对于扩展是开放的,但是,对于修改是封闭的。在软件的生命周期内,因为变化,升级和维护等原因需要对软件原有代码进行修改时,可能会将错误引入原本已经经过测试的旧代码中,破坏原有系统。因此,在软件需要变化时,我们应该尽量通过扩展的方式来实现变化,而不是通过修改已有的代码来实现。
②开闭原则认为,程序一旦开发完成,程序中的一个类实现只应该因为错误而被修改,新的或者改变的特性应该通过新建不同的类实现,新建的类可以通过继承的方式来重用原来的代码。
继承的优缺点:
优点:
①代码的重用,减少创建类的成本,每个子类都拥有父类的方法和属性
②子类与父类基本相似,但是又与父类有所区别
③提高代码的可扩展性
缺点:
继承是侵入性的,只要继承就必须拥有父类的属性和方法