1、类:确定对象将会拥有的特征(属性)和行为(方法),类是对象的类型,具有相同属性和方法的一组对象集合。
属性:对象具有的各种特征,每个对象的每个属性都拥有特定值。
对象的方法:对象执行的操作。
类与对象的区别:类——抽象概念;对象——具体实体。
2、public class 类名{
//定义属性部分(成员变量)
属性1的类型 属性1;
.
.
.
//定义方法部分
方法1;
.
.
.
}
3、使用对象的步骤:
创建对象: 类名 对象名 = new 类名();//等于对一个类实例化
.属性;
对象名.方法名();
4、成员变量
局部变量
5、构造方法
new+构造方法——创建新对象。
构造方法定义在Java类中——初始化对象的方法,构造方法与类同名且没有返回值。
语句格式:
public 构造方法名(){ //没有返回值类型,与类同名,可指定参数
//初始化代码
}
当未指定构造方法时,系统会自动添加无参的构造方法
构造方法:可给对象的属性赋值;
可保证给对象的属性赋一个合理的值。
6、static
静态成员可以使用类名直接访问,也可用对象名进行访问。
static可修饰变量、方法和代码块。
7、静态方法:
public static void print(){ //用static关键字声明静态方法
System.out.println("欢迎");
}
静态方法中可直接调用同类中的静态成员,但不能直接调用非静态成员,可通过创建类的对象,通过对象来访问非静态变量。如:
public static void print(){
HelloWorld hello = new HelloWorld(); //创建类的对象
System.out.println(hello.name); //通过对象来实现在静态方法中调用非静态变量
}
在普通成员方法中,可直接访问同类的非静态变量和静态变量。
静态方法中不能直接调用非静态方法,需通过对象来访问非静态方法。
8、
public class HelloWorld{
String name; //定义一个成员变量
{
name="哈哈"; //通过初始化块为成员变量赋值
}
}
在类声明中,可以包含多个初始化块,当创建类的实例化时,就会依次执行这些代码块。如果使用static修饰初始化快,就称为静态初始化快。
静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
public class HelloWorld{
int num1;
int num2;
static int num3; //声明静态变量
public HelloWorld(){
num1 = 91; //通过构造方法为变量num1赋值
System.out.print(num1);
}
{
num2 = 543; //通过初始化快为变量num1赋值
System.out.print(num2);
}
static{
num3 = 24; //通过静态初始化快为静态变量num1赋值
System.out.print(num3);
}
}
程序运行时静态变量初始化快最先被执行,然后执行普通初始化快,最后才执行构造方法。静态初始化块只在类加载时执行一次。