2019-01-17
内容:类的设计和使用
一、类的构成
@属性:成员变量,和变量类型一样,一共有8+3种
@构造器:*也称构造方法,创建对象,给对象初始化
*格式:默认构造:修饰符 类名 (){
}
带参构造:修饰符 类名 (形参列表){
}
*注意:#不显式写构造器时,系统默认默认构造
#当显式写构造器时,会将默认构造覆盖掉
#不能被static,final,synchronized,abstract,native修饰
#不声明返回值类型(与void不同)
#不能返回return语句
#不同的构造器之间构成重载
@方法:*提供某种功能的实现
*格式:修饰符 返回值类型 方法名 (形参列表){
}
*注意:#return语句放在方法体最后面
#方法内可以调用方法,但不能声明方法
@代码块:*格式:修饰符{
}
*分为非static代码块和static代码块
*非static代码块:#格式{
}
#多个代码块之间按顺序执行
#代码块里可以对属性赋值,可以有输出语句
#代码块随对象的加载而加载,每个对象都加载一次
*static代码块:#格式:static {
}
#多个代码块之间按顺序执行
#代码块里只能操作静态变量和静态方法
#代码块随类的加载而加载,一个类只加载一次
*补充:属性的赋值操作顺序:1、静态代码块
2、属性默认初始化值
3、非静态代码块或者显示初始化值(此处两种结构按顺序执行)
4、构造器赋值
5、对象调用赋值
二、类的简单使用步骤
@设计并创建类
@实例化类的对象
@通过类的对象.属性或者类的对象.方法来完成相应功能
三、类与类之间的关系
@关联关系
@继承关系
@聚合关系:*聚集关系
*组合关系
四、类和对象的关系
类是对一类事物的描述,是抽象的
对象是实际存在的某个类的实体,也称实例(Instance)
五、修饰符
释义:用来修饰属性、方法和类的权限
对于属性和方法:有四种修饰符
用法:修饰符 类内部 包内 子类 任何地方
private yes no no no
default yes yes no no
protected yes yes yes no
public yes yes yes yes
对于类:有两种修饰符:*public 任何地方都能使用此类
*default 一个包内的类可以使用此类
六、JAVA中的值传递
释义:*JAVA中的参数传递都遵循值传递
*当形参是基本数据类型时,值传递将实参的值传递给形参变量
*当形参是引用类型时,值传递将实参的引用类型变量值传递给形参的引用类型变量(传递的是变量在堆空间的内存地址)
形参:方法声明时括号内的参数
实参:方法调用时传递的参数
@属性:成员变量,和变量类型一样,一共有8+3种
@构造器:*也称构造方法,创建对象,给对象初始化
*格式:默认构造:修饰符 类名 (){
}
带参构造:修饰符 类名 (形参列表){
}
*注意:#不显式写构造器时,系统默认默认构造
#当显式写构造器时,会将默认构造覆盖掉
#不能被static,final,synchronized,abstract,native修饰
#不声明返回值类型(与void不同)
#不能返回return语句
#不同的构造器之间构成重载
@方法:*提供某种功能的实现
*格式:修饰符 返回值类型 方法名 (形参列表){
}
*注意:#return语句放在方法体最后面
#方法内可以调用方法,但不能声明方法
@代码块:*格式:修饰符{
}
*分为非static代码块和static代码块
*非static代码块:#格式{
}
#多个代码块之间按顺序执行
#代码块里可以对属性赋值,可以有输出语句
#代码块随对象的加载而加载,每个对象都加载一次
*static代码块:#格式:static {
}
#多个代码块之间按顺序执行
#代码块里只能操作静态变量和静态方法
#代码块随类的加载而加载,一个类只加载一次
*补充:属性的赋值操作顺序:1、静态代码块
2、属性默认初始化值
3、非静态代码块或者显示初始化值(此处两种结构按顺序执行)
4、构造器赋值
5、对象调用赋值
二、类的简单使用步骤
@设计并创建类
@实例化类的对象
@通过类的对象.属性或者类的对象.方法来完成相应功能
三、类与类之间的关系
@关联关系
@继承关系
@聚合关系:*聚集关系
*组合关系
四、类和对象的关系
类是对一类事物的描述,是抽象的
对象是实际存在的某个类的实体,也称实例(Instance)
五、修饰符
释义:用来修饰属性、方法和类的权限
对于属性和方法:有四种修饰符
用法:修饰符 类内部 包内 子类 任何地方
private yes no no no
default yes yes no no
protected yes yes yes no
public yes yes yes yes
对于类:有两种修饰符:*public 任何地方都能使用此类
*default 一个包内的类可以使用此类
六、JAVA中的值传递
释义:*JAVA中的参数传递都遵循值传递
*当形参是基本数据类型时,值传递将实参的值传递给形参变量
*当形参是引用类型时,值传递将实参的引用类型变量值传递给形参的引用类型变量(传递的是变量在堆空间的内存地址)
形参:方法声明时括号内的参数
实参:方法调用时传递的参数