zoukankan      html  css  js  c++  java
  • 第7章 复用类

          ·复用代码

               ·复制代码,并加以改变

                ·代码重用机制~组合(功能)、继承(功能 & 形式)

          7.1 组合语法

               ·组合:将对象引用<置于>新类中即可

                     ·(对象类型)数据域初始化位置:

                           1.定义的地方——构造器被调用前初始化

                           2.构造器中

                           3.惰性初始化

                           4.使用实例初始化(实例代码块)

          7.2 继承语法

               ·创建一个类时,总是在继承:直接或间接地继承自Object

                     1.显式继承:程序员用extends指出

                     2.隐式继承:继承Object

               ·Java的标准根类:Object

               ·extends:自动得到基类所有的域和方法(含静态域和静态方法)        

          7.3 代理

               ·代理:

                     ·介于继承和组合之间

                     ·将成员对象<置于>所要构造的类中(就像组合),但与此同时,在新类中暴露了该成员对象的       所有方法(就像继承)

                     ·使用代理可以拥有更多的控制力,因为可选择暴露成员对象的方法子集

          7.4 结合使用组合和继承

               ·确保正确清理

         

          7.5 在组合与继承之间选择

               ·组合技术:适用于想在新类中使用现有类的功能而非它的接口的情形

          7.6 protected关键字

          7.7 向上转型

               ·向上转型过程中,类接口中唯一可能发生的事情是丢失方法

               ·用组合还是继承:问自己是否需要从新类向基类进行向上转型

         

          7.8 final关键字

               ·final数据:

                     ·static数据,只存一份,可变

                     ·static final数据(编译期常量,大写表示),只存一份,且基本类型不可变、引用类型对象引用不可变(取决于是否为不可变类)

                     ·final基本类型数据:数值恒定不变

                     ·final引用类型数据:对象引用恒定不变(不能让它指向另外一个对象),但是对象未必不可改变(取决于是否为不可变类)

                     ·空白final

                     ·匿名内部类中使用final参数

                     ·类中所有的private方法都隐式地指定为final的

               ·final方法:禁止覆盖

               ·final类:禁止继承

         

          7.9 初始化及类的加载

               ·类的代码在初次使用时才加载

                     ·加载情形:

                          ·创建第一个对象:构造器调用(隐式的static方法)

                          ·静态成员调用:静态域或静态方法的访问

  • 相关阅读:
    Palindrome Partitioning
    Minimum Path Sum
    Maximum Depth of Binary Tree
    Minimum Depth of Binary Tree
    Unique Binary Search Trees II
    Unique Binary Search Trees
    Merge Intervals
    Merge Sorted Array
    Unique Paths II
    C++ Primer Plus 笔记第九章
  • 原文地址:https://www.cnblogs.com/InformationGod/p/8514586.html
Copyright © 2011-2022 走看看