java面向对象相关概念

来源:互联网 发布:淘宝直播卖的翡翠a货 编辑:程序博客网 时间:2024/05/21 17:19

 1.面向对象的基本特征:抽象,封装,继承,多态

    抽象:忽略与当前主题无关的信息,只关注与当前主题相关的的方面,抽象分为两部分,分别为:过程抽象和数据抽象。

    假设当前要抽象出鸟这个类则这两种抽象方式可作如下阐述:

            a.过程抽象:针对对象的行为特征,比如鸟会飞,会跳等,这些就会抽象为方法即过程,在鸟这个类中将会充当方法。

            b.数据抽象:针对对象的属性,比如鸟有羽毛,有爪子等,这些就会抽象成鸟这个类的属性。

    封装 :隐藏实现细节,对外提供清晰的访问接口

            a.例如汽车有发动机这个属性,但是其内部是怎么工作的我们是不知道的,我们只需用钥匙启动汽车,发动机自然会运转起来。

            b.在java中封装主要体现在在定义类时一般将类的属性私有化且对外提供公开的getter()和setter()。

    继承:在现有类(父类)中派生一个新类(子类),子类拥有父类所有非私有的属性和方法,子类可以在此基础上对自己进行扩充(添加新的方法和属性)

            a.继承实现了代码的复用,并且也更贴切与真实的生活,比如儿子可以继承父亲的财产。

            b.继承使程序的维护更加的便利,当一个已经定义好的类需要添加新的属性和方法时,我们可为其派生一个子类,在子类之上进行扩充,对原始类没有丝毫影响。

    多态:对同一个消息做出不同的回应,java中多态的实现方式:方法重载和重写

            a.方法重载:包括构造方法重载和普通方法重载,是指在同一个类中出现了同名方法其参数列表不同(个数和类型),方法重载与返回值无关。

            b.方法重写:在具有子父类关系的两个类中,子类重构了从父类那继承来的方法。

0 0