zoukankan      html  css  js  c++  java
  • 编程基础(2)

    一、根据元素的组织方式,数据结构可以分以下两类:

    1.线性:元素需要按照先后顺序访问,并不是说所有元素,都得完后相连地存放。eg:链表、数组、栈、队列;PS:栈用vector数组表示;队列用链表或数组;

    2.非线性:元素按照非线性的顺序存储。eg:树、图;

    二、理解面向对象的概念

    1.面向对象:将数据和操作数据的方法放在一起,作为一个互相依赖的整体--对象。对同类对象抽象出他们的共性,形成类。对象称之为类的实例。

    经典例子;将大象装进冰箱里。首先把冰箱门打开、然后把大象放进去、最后把门关上。这样就把大象放进去了。从上面的叙述我们可以得出从把冰箱门打开、然后把大象放进去、最后把门关上,这其实就是一个过程,最后的结果就是把大象放到了冰箱里。在这个过程中我们可以把冰箱看成一个对象而打开冰箱门,把大象放进去,然后把冰箱门关上,我们都可以把这一系列动作看成是冰箱这个对象的方法,而我们要把大象放到冰箱里我们只需要调用冰箱的这些方法就行了,至于说冰箱怎么实现这些方法的你没有必要知道,你所要知道的就是结果:大象放到了冰箱里。这就是面向对象。

    2.面向对象的三大特性:封装、继承和多态。参考https://blog.csdn.net/W_DevilMayCry/article/details/70832893

    2.1.封装:隐藏对象的对象的属性和实现细节,只对外提供公共访问方式。

               好处:便于使用,能够提高重用性,安全

    2.2.继承:子类对象拥有父类的全部属性和方法,成为子类对父类的继承。Java中时单继承,父类可有多个子类,但子类只能继承一个父类。

      好处:实现了代码的复用。

      子类不能继承父类中private的成员变量和方法;

      子类可以重写父类的方法;使用super对父类成员访问

      super的三种用法:(1)访问父类被隐藏的成员变量,super.variable

               (2)调用父类中被重写的方法

               (3)调用父类的构造函数 

    2.3多态

    第一种方式:父类引用指向子类对象。

    第二种方式:重写和重载

    重写:在同一个类中,编写多个名称相同的方法,这些方法在参数个数、参数类型或参数顺序上有所区别。

       子类的方法必须要与父类方法完全一致,才能达到重写效果;

       子类方法的返回值必须和父类被重写方法的返回一致;

               子类抛的异常必须和父类抛的异常一致或是其子类;

               被重写的方法不能是private,否则只是在子类中新定义了一个方法,并没有对其进行覆盖。

    重载:在子类中编写与父类方法同名的方法,使得两者的参数个数、参数类型及返回值保持一致。

             方法名相同,函数参数不同(参数个数、类型或两者都不同);不能以返回值来区分重载方法;

    一切美好的都是值得等待的。
  • 相关阅读:
    jQuery.Validate自定义规程的使用案例
    Jquery.Validate验证CheckBoxList,RadioButtonList,DropDownList是否选中
    asp.net(c#)有关 Session 操作的几个误区
    Selenium2+Python自动化-处理浏览器弹窗(转载)
    Selenium2+python自动化29-js处理多窗口【转载】
    Selenium2+python自动化26-js处理内嵌div滚动条【转载】
    Selenium2+python自动化24-js处理富文本(带iframe)【转载】
    Selenium2+python自动化25-js处理日历控件(修改readonly属性)【转载】
    Selenium2+python自动化17-JS处理滚动条【转载】
    Fiddler抓包11-HTTPS证书Actions无法导出问题【转载】
  • 原文地址:https://www.cnblogs.com/minghua-b/p/9691339.html
Copyright © 2011-2022 走看看