Java成员
Java的基本单位是类,Java成员即类中的成员,包括以下五个部分:
- 变量
- 方法
- 构造器
- 初始化块
- 内部类
变量
声明方式:
[修饰符]类型 变量名[=默认值];
修饰符:public、protected、默认(什么也不写)、private、static、final
根据定义变量的位置不同,可进行以下划分:
所有变量:变量是一个数据存储空间的表示。通过变量名可以简单快速地找到它存储的数据。变量是存储数据的一个基本单元,不同的变量相互独立。
成员变量(全局变量,field variable):在类中声明的变量;
类变量(静态变量):以static修饰的成员变量;
实例变量:不以static修饰的成员变量;
局部变量(local variable):定义在方法或域中的变量,包括形参、方法局部变量、代码块局部变量。
注:局部变量的初始值必须被显式声明!
package day608;
public class Var {
int age; // 实例变量
static int score; // 类变量
public static void main(String[] args) {
String name; // 局部变量
System.out.println(score); // 将输出0
System.out.println(name); // 会报错,未初始化:Unresolved compilation problem: The local variable name may not have been initialized
}
}
方法
方法必须定义在类中。
声明方式:
[修饰符]方法返回值类型 方法名(参数列表)[{}]
修饰符:public、protected 、默认、 private、 abstract、 final、 static
注:abstract和final不可同时出现,抽象的就是用于重写,而final修饰的方法不可被重写;
返回值类型:①void,无返回值类型;②基本数据类型和引用类型。
构造器
构造器用于构造类的实例,通过new关键字调用构造器,是创建对象的根本途径,如果一个类无构造器,系统将会为该类提供一个默认构造器,因而实际每个类都有构造器。
声明方式:
[修饰符]构造器名(参数列表){}
注:构造器名必须与本类的public访问修饰符的类名相同。
初始化块
在类的编译过程中,初始化块将会被还原到各个构造器中,并且位于构造器的最开始处。
因为有如下执行顺序:
静态初始化块 > 动态初始化块 > 构造器
- 静态初始化块
- 动态初始化块
public class Var {
// 静态初始化块
static {
}
// 动态初始化块
{
}
public static void main(String[] args) {
// 动态块,静态方法里不能出现静态成员
{
}
}
}
内部类
顾名思义,类中包含一个类。
注:外部类的访问修饰符只能是public和默认
class A {
private class B {
}
}