• 编程基础(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,否则只是在子类中新定义了一个方法,并没有对其进行覆盖。

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

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

    一切美好的都是值得等待的。
  • 相关阅读:
    IntelliJ IDEA-快捷键
    12-String类、static关键字、Arrays类、Math类
    11-API之Scanner类、Random类、ArrayList类
    C语言二叉树中序遍历——递归思想
    解决SQL Server数据库不同版本不能兼容使用的问题
    绿色版,免安装版和安装版的区别
    ScreenToGif 动图发送到手机上打开模糊
    eclipse中更改jsp默认编码
    sql重新不允许保存修改问题
    SQL因为重复行导致的问题
  • 原文地址:https://www.cnblogs.com/minghua-b/p/9691339.html
Copyright © 2020-2023  润新知