1.2 java中的类
1.类在java中的重要性
类是java程序的组织单元
2.类的组成
属性和方法
3.属性和方法如何声明
修饰符+返回类型+方法名/属性名
1.3 java中对象的使用
1.创建对象
类名 对象名=new 类名();
2.使用对象
对象名.属性/方法
3.关于成员变量和局部变量
成员变量在类中定义,用来描述对象将要有什么,作用域在整个类中可见
局部变量在方法中定义,用来临时保存数据用。作用域在方法内部中可见
当成员变量与局部变量重名时,局部变量具有更高的优先级
1.4 java中的构造方法
1.啥子是构造方法
定义在java类中的一个用来初始化对象的方法,与类名相同并且没有返回值
且系统会自动生成一个无参的构造方法,当没有指定构造方法时,系统会自动添加无参的构造方法
2.构造方法的重载
方法名相同但参数不同的多个方法,调用时会根据参数的不同选择不同的方法
这里需要注意的是重载的条件有两个,一个是方法名相同,一个是参数列表不同
1.5 关于static关键字使用
1.static关键字
static关键字可以修饰变量,方法和代码块,表示静态的意思
2.static静态变量
静态变量属于整个类,当系统第一次使用该类时,就会为其分配内存空间直到该类被卸载了才会进行资源回收
我们可以直接访问静态变量,也可通过类名访问静态变量
3.static静态方法
静态方法同样属于类,静态方法中可以直接调用同类中静态变量,但不能直接调用非静态成员,只能通过创建对象
后通过对象去调用非静态成员;普通成员方法中,**则可以直接访问同类的非静态成员变量和静态成员变量;
静态方法中不能直接调用非静态方法,也是需要通过创建类对象来实现调用
4.关于静态初始化块
java中可以通过初始化块赋值,在类的声明中,可以包含多个初始化块,当创建类的实例时,就会依次
执行这些代码块,如果使用static修饰初始化块,就称为静态初始化块;-->此处需要区分初始化块和静态初始化块的区别
**需要注意的是,静态初始化块只在类加载的时候执行一次,同时静态初始化块只能给静态变量赋值,
不能初始化普通的成员变量;程序运行时最新被执行的是静态初始化块,然后是初始化块,最后才是构造方法;并且
静态初始化块只执行一次:
public class HelloWorld {
String name; // 声明变量name
String sex; // 声明变量sex
static int age;// 声明静态变量age
// 构造方法
public HelloWorld () {
System.out.println("通过构造方法初始化name");
name = "tom";
}
// 初始化块
{
System.out.println("通过初始化块初始化sex");
sex = "男";
}
// 静态初始化块
static {
System.out.println("通过静态初始化块初始化age");
age = 20;
}
public void show() {
System.out.println("姓名:" + name + ",性别:" + sex + ",年龄:" + age);
}
public static void main(String[] args) {
// 创建对象
HelloWorld hello = new HelloWorld();
// 调用对象的show方法
hello.show();
}
}
5.关于初始化块和普通赋值以及静态初始化块的区别联系
初始化块作为每个对象的一部分,而不是类的一部分(除非是静态代码块);
因此,每创建一个对象的时候,都会走一次初始化块;
初始化与赋值是不同的概念:静态变量的初始化是在编译时进行,变量的赋值是在函数或程序运行时进行。
静态变量只初始化一次,但可以通过赋值的方式多次修改静态变量的值。