1. 类变量与实例变量
类变量:是在类中以static为修饰符的成员变量
实例变量:类中不以static为修饰符的成员变量
Class Student{
int a; //实例变量
static int b; //类变量
}
特点:
类的对象之间共享类变量,实例变量是每个类私有的
类变量可通过类名.类变量名或对象名.类变量名来方法;实例变量只能通过对象名.实例变量名来访问;
2. final变量(常量)
在类中变量以final作为修饰符的变量称为常量
final int MAX = 99;
特点:
常量名的所有字母必须大写
常量声明时必须初始化
常量只能被对象访问但不能改变它的值
3. 类的方法
Java中将类似C/C++中的“函数”称为“方法”,表示“做某些事情的方式”。
方法的组成:名称、参数、返回值和方法体
returnType methodName(/*Argument list*/){
/* Method body */
return value;
}
returnType:调用方法后返回的数据类型。
Argument list:定义传给方法的信息的类型和名称
方法名和参数列表共同唯一地标识出某个方法。
Java中的方法只能作为类的一部分来创建,通过对象来调用。
试图调用某个对象上不存在的方法,将给出编译错误提示信息。
通过对象调用方式:
objectName.methodName(arg1,arg2,arg3,…);
形式参数:在方法被调用时用于接收外部传入的数据变量
参数类型:形式参数的数据类型
返回值:方法在执行完毕后返还给调用它的程序数据
返回值类型:方法要返回的结果的数据类型
实参:调用方法时实际传给方法形式参数的数据
4. 类方法与实例方法
方法声明中用static修饰的称为类方法,不用static修饰的称为实例方法。
类方法与实例方法的区别:
一个类中的方法可以相互调用,其中实例方法可以调用该类中的实例方法或类方法;但类方法只能调用该类中的类方法,而不能调用实例方法;
实例方法中可以调用所有的成员变量包括实例变量或类变量;但类方法只能操作类变量。
实例方法必须通过对象调用,而类方法可以直接通过类名调用。
5. 方法重载
方法的重载就是在同一个类中允许同时存在一个以上的同名方法,只要它们的参数个数或类型不同即可。
每个重载的方法都必须有一个独一无二的参数类型列表。
6. 构造器(构造方法)
构造器:专门用来创建对象时调用的方法
特点:
具有与类相同的名称;
不含返回值;
不能在方法中用return语句返回一个值。
作用:
为对象进行初始化(成员变量);
7. 构造方法的重载
构造器重载的两个要求:
符合构造器的特点
与类名相同
且无返回值,也不能定义为void
且不能用return返回值
符合方法重载的特点
参数个数不同
或参数类型不同
8. 构造器的细节问题
1、每个类都至少有一个构造器,如果程序中没有定义构造器,JVM会在编译时自动生成一个不带参数也无方法体的构造器。
public Person(){}
2、如果自己在类中定义了带参数的构造器,那么JVM就不在生成不带参数的空构造器了。我们在实例化的时候也只能通过自己定义的构造器形式来创建一个对象。
Public p = new Public(“Tom”);