zoukankan      html  css  js  c++  java
  • 面向对象的简单理解一

    面向对象的特征:封装(private)继承(extends) 多态

    继承:子类扩展父类的功能并将父类的操作都继承下来。允许多层继承,

    • 子类只允许继承父类的公有方法和公有成员
    • 父类的私有方法和成员需要间接才能访问

    如用直接用name则不行 需用getName

    Code
    • 子类对象实例化时,先默认调用父类的无参构造函数(默认隐含了一个super()方法);子类对象实例化-----父类的无参构造函数-----子类的无参构造函数
    Code
    • 方法的覆写:子类覆写父类方法时不能拥有比父类更严格的方法,方法名都一样,参数也一样,子类调用的永远是覆写后的方法
    Code

    权限:

    1. public
    2. default
    3. private只能在一个类中
    • 重载与覆写的区别:

    重载:方法名称相同,参数的类型或个数不同,是发生在同一个类中 覆写:方法名称相同,访问权限最好相同参数的类型或个数一样,在子类中实现

    • 可以通过super(),根据参数来来调用父类的构造方法。默认是无参的。
    • 通过super().方法可以调用被子类覆写的方法。
    Code

    this与super的概念:

    Code

    可以看到在super()的构造方法必须在首行,因为子类构造函数初试化之前先调用父类的构造函数。

    看下完整的继承:

    Code

    例子:

    Code
  • 相关阅读:
    人月神话--没有银弹软件工程中的根本和次要问题(No Silver Bullet Essence and Accident in Software Engineering)
    人与人之间最难得是合作,组件与组件之间最难得时协作。
    关注软件构架与软件构架师
    软件产品本质是逻辑或者说事概念产品
    为什么需求分析离不开系统逻辑模型
    MySQL中varchar最大长度是多少?【转】
    WCF自定义授权[转自小庄的博客]
    PetShop的系统架构设计[转]
    百练 2734 十进制到八进制 解题报告
    百练 2818 密码
  • 原文地址:https://www.cnblogs.com/zhxiaomiao/p/1409987.html
Copyright © 2011-2022 走看看