个人对于面向对象的个人理解 :
面向对象主要是分为继承 封装 多态 三大特性
继承 : 继承就是从已有类得到继承信息创建新类 提供继承信息的称为父类 得到继承信息的称为子类
封装 : 将数据和操作数据的方法绑定起来对数据的访问只能通过已定义的接口,就是把能隐藏的东西都隐藏起来,只像外界提供最简单的编程接口
多态 : 就是用同样的对象做不同的事情
多态的话又分为编译时多态和运行时多态 方法的重载属于编译时多态,方法的重写属于运行时多态
方法重载的规则:
1.方法名一致,参数列表中参数的顺序,类型,个数不同。
2.重载与方法的返回值无关,存在于父类和子类,同类中。
3.可以抛出不同的异常,可以有不同修饰符。
方法重写的规则:
1.参数列表必须完全与被重写方法的一致,返回类型必须完全与被重写方法的返回类型一致。
2.构造方法不能被重写,声明为 final 的方法不能被重写,声明为 static 的方法不能被重写,但是能够被再次
声明。
3.访问权限不能比父类中被重写的方法的访问权限更低。
4.重写的方法能够抛出任何非强制异常(UncheckedException,也叫非运行时异常),无论被重写的方法是
否抛出异常。但是,重写的方法不能抛出新的强制性异常,或者比被重写方法声明的更广泛的强制性异常,反之则
可以。
正常都是三大特性, 如果说四大特性的话还有一个就是抽象
抽象 :是指把一些不同类型的物体的共有属性或者行为抽取出来,然后构成一个公共的父类。然后当使用这些公共的属性或者行为的使用,就可以通过父类去调用,这样的话,就不用去考虑具体应该由谁去调用这个行为,屏蔽了类型的细节,用起来更方便。