欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

面向对象三大特征的一些细节

程序员文章站 2022-03-21 17:41:20
面向对象的三大特征好处 封装: 让类的属性和属性更安全,防止该类的代码和数据被其他类随意访问 继承: 提高代码的复用性 让类与类之间产生关系(不能说提高内聚,而是提高了耦合) 是实现多态的前提条件之一 多态: 扩展性和便利,因为父类类型可以作为形参,传递子类对象调用方法 多态成员访问特点:Anima ......

面向对象的三大特征好处

封装:

  • 让类的属性和属性更安全,防止该类的代码和数据被其他类随意访问

    继承:

  • 提高代码的复用性
  • 让类与类之间产生关系(不能说提高内聚,而是提高了耦合)
  • 是实现多态的前提条件之一

    多态:

  • 扩展性和便利,因为父类类型可以作为形参,传递子类对象调用方法

多态成员访问特点:animal ani=new dog(); //dog是animal子类

            成员变量:编译看左边,运行看左边
                编译的时候就是去父类中查找,运行的时候就去父类中查找
          
            成员方法:
                非静态方法:编译看左边,运行看右边
                静态方法: 编译看左边,运行看左边

            结论:
                只有非静态方法是编译看左边,运行看右边,其他的都是看左边

        注意:"
            父子类中出现一模一样的静态方法不是方法重写,只是长得像方法重写


为什么就非静态方法的时候看右边??也就是多态的时候执行子类的方法??
因为java中,向上造型呈现的多态性仅仅针对成员函数,成员属性不具有多态性