什么是类?:
类是同一类事物在共性上、抽象层上的描述。
类:类是一个模板,它描述一类对象的行为和状态
类包括属性和方法。
属性:名词(状态)
方法:动词(表行为)
什么是对象?:
他是类的一个实例,是个性的、具体的描述
对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
定义类的基本格式:
注意:[ ]里面的内容为可选项.
修饰符类:可以省略,用于控制类的访问权限,可能取值为public、private、protected。
extends 父类:可以省略,extends是关键字,表示继承后面的父类。
implements 接口列表:可以省略,implements 是关键字实现关键字后面的接口,多个接口之间用逗号分隔。
定义成员变量的基本格式:
[修饰符] [static] [final] 变量类型 变量名 [= 初始值];
static:用于指定该成员变量为静态变量,可以直接通过类名访问,属于类变量,不属于任何一个类的对象;省略static表示该成员变量是实例变量。
final:用于指定该成员变量为常量。
静态成员变量和实例成员变量区别:
1.修饰关键字不同,实例成员变量不用static修饰
2.调用方式不同;实例成员变量只能被对象调用,静态成员变量既可以被类调用,又可以被对象调用。
定义成员方法的基本格式:
[修饰符] [static] 方法返回值类型 方法名([参数列表]){
[方法体]
}
static:用于指定改成员方法为静态方法,可以直接通过类名访问,省略则表示该方法是实例方法。
方法返回值类型:用于指定方法的返回值类型,如果方法没有返回值,则在方法声明中可以使用void关键字进行标识。如果方法有返回值,在方法体中必须包含return语句。方法返回值的类型必须和方法声明时指定的返回值类型相同。
参数列表:用于指定方法执行需要的参数,参数声明的形式是(参数类型 参数名)如果有多个参数,各个参数之间使用逗号分隔。
静态方法和实例方法的区别:
1.修饰关键字不同实例方法不能用static修饰。
2.问对象不同实例方法既可以访问静态成员变量和静态方法,又可以访问实例成员变量和实例方法。而静态方法只能访问静态成员变量和静态方法,不能访问实例成员变量和实例方法。
3.调用方法不同实例方法只能被对象调用,而静态方法既可以被类调用,又可以被对象调用。
注意:构造方法是特殊的方法,不能声明为静态方法。
成员变量和局部变量的区别:
1.定义的位置不同成员变量在类体内,方法外。局部变量定义在方法中和方法参数中。
2.修饰的关键字不同,局部变量不能使用public、protected、private、static修饰,但可以使用final关键字声明局部变量为常量。而成员变量都可以使用以上关键字修饰。
3.初始化值不同、成员变量系统默认给初始值。而局部变量系统默认没有初始值。定义之后必须赋值才能使用。
构造方法的定义:
构造方法是一种特殊的方法,它没有返回值,不需要用void标识。构造方法的名称必须与它所在类的名称完全相同。
构造方法不能被对象调用。而是在创建对象时自动调用构造方法。如果没有定义构造方法,JAVA会提供默认的无参构造方法。
构造方法的特征:
1.构造方法名必须要与类名相同。
2.构造方法没有返回值。
3.构造方法不能用void修饰。不能用private修饰。
4.不能在构造方法中使用return语句返回值。
5.构造方法只能用new运算符调用。
定义构造方法的语法格式:
[访问修饰符] <类名> ([参数列表]){
方法体
}
例如:为手机类添加构造方法。
例:创建手机类 Phone