对象与类
对象特性
- 对象标识:如何辨识具有相同行为与状态的不同对象?
- 对象的状态:当对对象施加方法时,对象如何响应
- 对象的行为:对对象施加的方法
类的构造:
public Class books {
public read(){
};
public static void main(){
};
}
books a = new books();//类的初始化
类与对象关系
构造器(Constructor)
构造器是一种特殊的方法,用来构造并初始化对象;一个类中可以有多个构造器,只要传入构造器的参数不同就可以了,构造器的名字必须与类名字相同。
对象与对象变量
创建了一个对象变量a,此时不能调用对象的方法
books a;
这样是成为的
s=a.read();
必须初始化变量
a = new books();
成员变量、局部变量、静态变量
- 成员变量
下面id与name为成员变量,成员变量最好使用private进行权限修饰,使其私有,可以更好的封装;
成员方法:getName()和setName()
this关键字被隐式地用于引用对象的成员变量和方法
public Class books {
private int id;
private String name;
public read(){
};
public static void main(){
};
}
-
局部变量
在类方法中的形参也可作为一个局部变量
-
静态变量
由static修饰的变量,被声明为static的变量、常量和方法被称为静态成员。静态成员是属于类所有的,区别于个别对象,可以在本类或其他类使用类名和“.”运算符调用静态成员。
静态域、静态变量、静态常量、静态方法
静态域:每个类中只有一个这样的域,静态域属于类而不属于独立的对象。
创建静态变量
private static int nextId = 1;
创建静态常量
public static final double PI = 3.1415;
静态方法
静态方法不能向对象实施的方法。
例如:Math类的pow方法就只能Math使用,而不能Math的对象使用。
Math.pow(x,a);//x^a
重载和重写的区别
-重载就是同样的⼀个⽅法能够根据输⼊数据的不同,做出不同的处理,一个类有多个构造器,对象初始化可以输入不同参数,便产生了重载
-重写就是当⼦类继承⾃⽗类的相同⽅法,输⼊数据⼀样,但要做出有别于⽗类的响应时,你就要覆盖⽗类⽅法
重载解析:编译过程时,编译器会选择不同的构造器进行对象初始化,这个过程叫重载解析