Java核心技术学习整理(二)
来源:互联网 发布:excel 2010 vba编程 编辑:程序博客网 时间:2024/06/06 03:00
1.面向对象程序开发(OOP)是由程序组成的,每个对象包含对用户公开的特定功能和用户隐藏的实现部分
2.依赖(uses-a):一个类的方法操作另一个类的对象
聚合(has-a):类A的对象包括类B的对象
继承(is-a): 类A拓展于类B,包含一些类B没有的功能
3.面向对象程序设计:首先从设计类开始,然后往每个类中添加方法
4.对象与对象变量的区别:对象变量不是一个对象,没有引用对象,不能使用对象的方法
有两种方法可以使对象变量使用:(1)将对型变量初始化 (2)让对象变量引用一个已存在的对象
5.在一个源文件中,只能有一个共有类,公有类名与Java文件名相同,但可以有任意数目的非公有类
6.类的构造器与类同名,每个类有一个或多个构造器,构造器可以有0个,1个,或多个参数,构造器没有返回值,构造器伴随着new操作一起调用(这点与C++不同)
7.注意不要编写返回引用可变对象的访问器方法
<span style="font-size:18px;"></pre><pre name="code" class="java">class Employee{Date HireDay;.....public Date getHireDay(){return HireDay;}}</span>Date d = Hanry.getHireDay();
d.setTime(...); d和Hanry.HireDay都会发生变化,因为这俩个值引用同一个对象,破坏了类的封装性
可以改成 return HireDay.clone()即可
8.任何一个类的方法可以访问任何一个该类生成对象的私有域
9.在任何一个对象构造以后属性值不发生改变,可以使用private final String....
10.private static int nextID = 1 ->无论有多少个该类的对象,只会有一个nextID;(静态变量)
静态方法:public static int getNextID(){return nextID} ->可以直接用类名直接调用,与对象无关
11.不能有两个名字相同,参数类型也相同却返回不同类型值的方法
12.一个类可以使用所属包中的所有类,以及其他包中的公有类
public:标记为public可以被任意类使用
private:标记为private的部分只能被定义他们的类使用
default:没有public或private,这个部分可以被同一个包中的所有方法访问
13.类设计技巧:
(1)一定要保证数据私有,为了类的封装性
(2)一定要对数据初始化,可以为数据提供初始值
(3)不要再类中使用过多的基本类型
例:private String street;private String city;private String state ->用class Address代替
(4)不是所有的域都需要独立的域访问器(get)和域更改器(set)
(5)降职责过多的类分解
(6)类名和方法名要能体现他们的职责
- Java核心技术学习整理(二)
- Java核心技术学习整理(一)
- Java核心技术学习笔记(二)
- 《Java核心技术》学习之路(二)
- Java多线程编程核心技术学习(二)
- UML核心技术学习(二)
- Java核心技术学习笔记之二:Java运算符
- java学习笔记 第二篇 核心技术(二)
- java核心技术学习笔记(二)—基本数据类型总结
- Java核心技术 第9版 学习笔记二
- Java核心技术知识学习
- Java核心技术学习笔记
- JAVA核心技术的学习
- Java核心技术学习笔记
- Java核心技术-学习笔记
- 《java核心技术》学习笔记
- JAVA核心技术学习笔记
- java核心技术学习问题
- AsyncHttpClient 源码分析
- 自定义UINavigationBar,出现坐标下移,UINavitionBar半透明效果
- listView一些常用属性
- 关于数据挖掘的something
- iOS 将时间戳转换为可读字符串
- Java核心技术学习整理(二)
- Swipe Views with Tabs
- Eclipse里的web项目名有红叉,但是底下的每一个文件都没有红叉解决方法
- 敏捷/Scrum 之看板初体验
- Ralink WIFI driver发送速率选择算法分析
- fineReport 配置数据源
- Unity3D优化
- Jedis使用
- 面试题——Session的get方法 与 load方法区别