美文网首页
面向对象的应用

面向对象的应用

作者: 赤赤有名 | 来源:发表于2015-12-22 20:35 被阅读152次

    1.面向对象

    面向对象有什么用呢,继承有什么用呢,其实用处很大。就是可以减少代码的重复使用,化繁为简。把重复的代码写在父类里,然后通过子类继承父类,这样就减少了很多代码。

    例子:比如说刚开始有一台电脑,然后有打印,发送......

    现在加了一台打印机,然后在定义一个类和里面的函数,再来一个再加一个类和里面的函数,这样一直加下去就会有很多重复代码。

    因此我们定义一个父类:让这些打印机继承这个父类和父类的函数,这样就是再多的打印机,只要继承父类就不再写这个类里面的函数,这样就节省很多事情。

    2.抽象类,抽象函数

    (1)什么是抽象函数:比原来的函数更加抽象(基本没说),没有函数体(大括号和大括号里面的内容)的函数就抽象函数,就是这个函数的内容是无法确定的。

    abstract void fun();

    函数存在的意义:当调用函数的时候,执行函数里面的内容。

    (2)抽象函数有什么作用:在面向对象里,先抽象再具体。

    抽象类:(天生就是当爹的,就是用来继承的)

    abstract class Persion{}

    abstract class China extends Persion{}

    1>抽象类不能生成对象——为什么,因为如果可以生成对象的话,那么调用这个类的抽象函数,该怎么办呢,抽象函数都没有实现内容,因此是不能生成对象的。

    2>有抽象函数的类必须被定义为抽象类

    继承类抽象类怎么办呢,又是一个抽象类(因为继承了父类的抽象函数,然后只能是抽象类)

    但是我们可以用复写抽象父类的抽象函数(抽象函数不是具体的,然后子类实现了这个抽象函数)

    这样子类就可以生成对象。

    3>抽象函数不一定定义抽象函数,可能是为了不想让别人生成这个类的对象。

    4>抽象类是可以有构造函数的

    构造函数是为了生成类的对象,那抽象类可以生成构造函数么?

    抽像类的子类是可以生成构造函数的,构造函数里面有自动的super来调用父类的构造函数(即使没有写super,可是会调用的)。

    3.为什么要使用抽象类

    我们无法写出一个万能的函数,包含所有情况。无法给具体的函数体;

    抽象类的必要性:

    1,为子类提供一个公共的类型;

    2,封装子类中重复内容(成员变量和方法);

    3,定义有抽象方法,子类虽然有不同的实现,但该方法的定义是一致的。

    相关文章

      网友评论

          本文标题:面向对象的应用

          本文链接:https://www.haomeiwen.com/subject/nhzphttx.html