02-Java中的对象和类
面向对象:
程序由对象构成,每个对象包含对用户公开的特定功能部分(public)和隐藏实现部分(private)。
类:
构造对象的模板
对象:
对象的行为 --- 可以对对象施加的操作(方法)
对象的状态 --- 对象的域的值
对象的表示 --- 行为相同,但状态不同的对象(equals()方法)
类之间的关系:
依赖 --- 一个类中使用另一个类的对象
聚合 --- 两个或两个以上的类组合成一个新的类
继承 --- 一个类是另一个类的子类
更改器和访问器方法:
javabean中是setter和getter方法。
更改器用于更改目前对象的状态(对象域的值)
访问器用于查看目前对象的状态(对象域的值)
用户自定义类:
class 类名 {
字段;
方法;
}
构造器:
public 类名 (参数){
语句;
}
1.构造器和类同名
2.每个类可以有一个以上的构造器
3.构造器可以有0个,1个,或多个参数
4.构造器没有返回值
5.构造器总是伴随着new关键字一起使用
隐式参数和显示参数:
当字段和方法的参数名相同时,方法中默认使用的参数,使用字段时需要使用this.字段名区别于方法参数
封装(setter and getter 方法):
使得对象的字段不能直接访问,提高安全性
一个私有的数据域
一个公共的域访问器
一个公共的域更改器
私有方法:
private 修饰的方法,对外部进行隐藏,不让外部对象直接访问,由类的方法自己调用,可以随意修改实现的方式。
final实例域:
final修饰的字段,只可以赋值一次,当对象初始化之后便不能在修改。
静态域和静态方法:
static关键字修饰的字段和方法,直接由类名访问,属于类所有。
静态常量:
static final修饰的变量
静态工厂方法:
使用方法直接获取某个类的对象。
重载:
方法名相同,参数列表不同
对象的初始化:
1.默认初始化:基本数据类型中,数值型赋值为0或0.0,boolean类型赋值为false ,char类型赋值为/u0000,引用数据类型赋值为null
2.显示初始化:在构造器中显示的给字段赋值
3.调用另一个构造器:使用this(参数列表)来调用,this()方法必须位于构造方法的第一行
4.初始化块:在类成员位置放置一个代码块{},其中对类的字段进行初始化
包:
为啥使用包:确保类名的唯一性
类的导入: import 包名.类名
静态导入:导入包中的静态方法和静态变量等静态资源: import static 包名.类名.静态资源
将包放入类中:package 包名
包的作用域:
public修饰的方法和字段 ,所有的类都可以使用
private修饰的方法和字段 ,只有本类可以调用
protect修饰的方法和字段 , 同一个包中的类和继承的子类可以使用
无修饰符的,只有同一个包中的类可以访问
类的设计技巧:
1.一定要保证数据私有
2.一定要对数据初始化
3.不要在类中使用过多的基本数据类型
4.不是所有的域都需要getter setter方法
5.可以将过多功能的类分解成多个类
6.类名和方法名尽量见名知意
7.优先使用final修饰的类:不可变类。
下一篇: 换个工作