1.static
- static是静态的意思,可以修饰成员变量和成员方法。
static修饰成员变量表示该成员变量只在内存中只存储一份,可以被共享访问、修改。
①修饰成员变量
静态成员变量(有static修饰,属于类,内存中加载一次):常表示如在线人数信息、等需要被共享的信息,可以被共享访问。
类名.静态成员变量(推荐)
对象.静态成员变量(不推荐)
实例成员变量(无static修饰,存在每个对象中):常表示姓名name、年龄age、等属于每个对象的信息。
②修饰成员方法
- 静态成员方法(有static修饰,归属于类),建议用类名访问,也可以用对象访问。
实例成员方法(无static修饰,归属于对象),只能用对象触发访问。
③如何使用
表示对象自己的行为的,且方法中需要访问实例成员变量的,则该方法必须申明成实例方法。
- 如果该方法是以执行一个共用功能为目的,则可以申明成静态方法。
④static访问注意事项
1.要求
- 由于工具里面都是静态方法,直接用类名即可访问,因此,工具类无需创建对象,建议将工具类的构造器进行私有。
2.好处
- 内部都是一些静态方法,每个方法完成一个功能。
-
⑥代码块
1.概念
代码块是类的5大成分之一(成员变量、构造器,方法,代码块,内部类),定义在类中方法外。
- 在Java类中,使用{}括起来的代码被称为代码块。
2.代码块分为
- 静态代码块:
- 格式:static{}
- 特点:需要通过static关键字修饰,随着类的加载而加载,并且自动触发、只执行一次
- 使用场景:再类加载的时候做一些静态数据初始化的操作,以便后续使用。
构造器代码块(了解,少见)
可以保证系统中,应用该模式的这个类永远只有一个实例,即一个类永远只能创建一个对象。
例如任务管理器对象我们只需要一个就可以解决问题,这样可以节省内存空间。
1.饿汉单例设计模式
在用类获取对象的时候,对象已经提前为你创建好了。
实现步骤:
- 在真正需要该对象的时候,才去创建一个对象(延迟加载对象)。
实现步骤
- final关键字是最终的意思,可以修饰(类、方法、变量)
- 修饰符:表明该类是最终类,不能被继承。
- 修饰方法:表明该方法是最终方法,不能被重写。
- 修饰变量:表明该变量第一次赋值后,不能再被赋值(有且仅能被赋值一次)。
注意
- 在Java中abstract是抽象的意思,可以修饰类,成员方法。
abstract修饰类,这个类就是抽象类;修饰方法,这个方法就是抽象方法。
1.注意事项
抽象方法只有方法签名,不能声明方法体。
- 一个类中如果定 义了抽象方法,这个类必须声明成抽象类,否则报错。
2.特征