码迷,mamicode.com
首页 > 编程语言 > 详细

《Java编程思想》笔记 第七章 复用类

时间:2018-05-15 12:40:43      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:xtend   string   字段   权限   隐式   不可   没有   rgs   组合   

1.组合

  • 将其他类的对象引用置于新的类中。

3.继承

  •  关键词extends  一个类继承基类后自动获得 基类的所有域(包括字段 引用 内部类 )和方法,当然不包括private,子类中调用继承下来的方法也不需要基类对象引用。继承相当于对基类的一个扩展,因为基类有的它都有,再额外添加了一些域和方法(或覆写方法)而已。

4.super

4.1 super.f() 调用基类的f()方法。

4.2 构造器中的super(args) 调用基类构造器,且只能在第一行。

4.3 由于构造器被重载后默认构造器不存在,且创建子类对象时一定会调用基类构造器,如果不用super则调用基类默认构造器,而基类构造器构造器被重载,故会报错,所以基类构造器被重载后子类要在构造器中显示用super调用基类构造器。

5.代理

  •  一个类中创建一个成员对象,并把该对象的方法都暴露出来。
  •  代理的作用或者什么时候用代理:  我们只想使用该成员对象的方法中的一些子集。(虽然通过继承和访问权限设置可以做到)

6.何时使用组合或继承

  • 组合:新类中实现现有类功能,而非现有类接口。
  • 继承:开发一个现有类的特殊版本。

7.final

7.1 final 不可改变数据。 final 引用 不可指向另一对象,这对数组也同样适用,数组也是对象,但对象内容可以改变,不能改变的时引用指向。

7.2 final 参数 : 参数为引用则无法改变指向,参数为基本数据类型则无法改变值。

7.3 final 方法 可被继承但子类无法覆写,所有private方法都是隐式的final.(private 方法非所在类无法访问,final方法不一定 看它是什么权限)

7.4 final 类 无子类,不可继承。

8. main方法

8.1 可以在类中设置main方法,这样便于进行单元测试单独运行这个类。

8.2 除构造器外,其他方法都需要对象调用才能执行,main方法也如此,创建对象并不会调用main方法,只有执行 java 类 命令时main方法才会被调用。

8.3 单独的一个没有main方法的类是无法运行的,main方法时程序运行的入口。

知识点:

  • 每一个非基本类的对象都有一个 toString() 方法,打印此对象引用就会输出该方法的返回值。
  • 默认构造器权限与类权限相同,没写权限的构造器为包访问权限。
  • 访问权限 谁能访问? 谁指的是类,而不是对象。

《Java编程思想》笔记 第七章 复用类

标签:xtend   string   字段   权限   隐式   不可   没有   rgs   组合   

原文地址:https://www.cnblogs.com/mibloom/p/9040373.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!