美文网首页
CTO介绍Java面向对象编程进阶「附图片解析」

CTO介绍Java面向对象编程进阶「附图片解析」

作者: 像程序一样思考 | 来源:发表于2018-12-17 20:55 被阅读18次

    JAVA面向对象进阶编程

    5.2抽象类

    有时,由于对象高级抽象的需要,希望类只需要说明方法首部,而不需要或不可能说明其方法体,其方法体只能由其子类来完成,这样的类需要使用abstract关键字修饰,这种类被称为抽象类。

    5.3继承

    继承概述:

    在Java编程语言中,通过继承可利用已有的类,并扩展它的属性和方法。这个已有的类可以是语言本身提供的、其他程序员编写的或程序员原来编写的。

    如果在声明类A时,指明类A继承了类B (类B是一个已定义了的类),则类A通常就拥有了类B的成员变量和方法。此时,类B称为类A的父类( superclass) ,父 类也称为超类或基类:类A称为类B的子类(subelass),子类也称为派生类。Objet类 是Java中所有类的父类,也就是说Java中的类直接或间接有Object类派生而来。

    Java中实行单继承,即一个类只能有一个父类。

    继承语法格式, 类继承语法形式如下:

    [修饰符] class SubClassName extends SupperClassName

    extends是继承关键词。SubClassName是新的子类名,

    SupperClassName是继承的父类名。父类名是必需的,而且只能有一个,因为Java中实行单继承。父类名所指定的类必须是在当前编译单元中可以访问的类,否则会产生编译错误。

    子类的特性:

    ①子类拥有其父类的所有属性和方法。但父类中说明为private的属性和方法,子类不可直接访问。

    ②子类可以对父类的方法覆盖或重载。

    子类对父类成员重载,子类可以对父类的方法覆盖或重载。

    方法覆盖:子类的方法首部与父类的方法首部相同,但是子类重新实现了该方法。

    方法重载: Java中方法可重载,就是方法名相同但形参列表不同之方法。子类的方法对父类的方 法也可重载。

    如果子类声明了一个与父类的成员变最同名的成员变量,则称父类的该成员变量被隐藏(Hiding) ,如果子类声明了一个与父类的成员方法同名的成员方法,则称父类的该成员方法被重写

    (Overriding)。关键字this和super分别用来指明子类和父类中同名的成员变量和方法。当父类的成员变量、子类的成员变量和类的对象方法使用的局部变量.者同名,或其中两个同名时,可以使用关键字this和super来指定所要使用的变量。

    继承是面向对象编程的主要优点之-,它对如何设计Java类有着

    直接的影响。继承有如下儿点好处:

    null、 this、 super

    Java语言规范中,每个类均有这样3个对象:

    (null、this、super)

    ( nulI ——“空”变量,表示这个对象不存在相应的实例)

    例如: Rectangle rect=nul I ;

    当一一个对象不再有用时,应当清除它以释放所占用的内存空间,这只要赋予它nu11即可。即如: rect=null ;

    this 一一 代表对象本身

    在类的方法中,如果要引用的变量名或方法名的成员变量名或成员方法名相同,则可通过使用this来代表对象本身,即引用对象自身。

    super一代表父类

    当子类中有与父类同名的变量或方法时,可加上super限定词来指明是对父类的变量或方法的引用。

    下面是this和super是使用的例子。

    final类(最终类)

    final修饰符可以定义一个 不能被继承的类,即不能再有子类。java.lang. System类就是final类的一个例子,它是最终的类。final 修饰符通常是出于安全的目的而使用的,因为不能继承final类,人们就不能重载或覆盖它的任何方法。如果允许个类被继承,其被重载或覆盖的方法可能会被改写。保证某个特定的方法在类层次关系上的某层以后只有一个定义,这对于那些安全性非常关键的类是非常必要的。

    无论是用于修饰变量、方法还是类,final关键字的目的都是一样的:增强代码的安全性。例4.8 final类说明

    final class EndClass extends SupperClass{ .... }

    5.4包

    包是为」解决设计较大规模的程序而引入的概念。一个大的系统,往往包含多种对象,需要多个类束描述。这些类以逻辑方式组合在一起,形成了所谓的包。

    使用 包可提供控制访问的范围。类、方法缺省访问权限时,就只可在它所属的包中被访问,说明为public的才 可在其他包中被访问。

    一个Java程序可 以由多个包组成。一个包可由一个或多个源程序文件(.java文件)构成,有多个源程序文件时要分别建立。注意:每个源程序文件中最多只能有一个说明为public的类。

    ■5.4.1 包说明

    ■ 5.4.2包的层次结构

    ■5.4.3 包的使用

    程序员成为架构师需要掌握的资料,关注我:简信回复“架构”获取往期Java高级架构资料、源码、笔记、视频。Dubbo、Redis、设计模式、Netty、zookeeper、Spring cloud、分布式、高并发等架构技术。资料获取方式:关注+转发后,私信关键词 【架构】即可获取!

    相关文章

      网友评论

          本文标题:CTO介绍Java面向对象编程进阶「附图片解析」

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