static修饰符
只在类中保存唯一一份,即本类重的所有对象共享同一份。一旦使用static关键字,那么这个内容不在属于对象自己,而是属于类的。
一旦使用static修饰成员方法,那么这就成为了静态方法。静态方法不属于对象,而是属于类的。
- 对于静态方法来说可以通过对象名称来进行调用,也可以直接通过类名称来进行调用。
//学生类创建一个学生对象
Student student = new Student();
student1.aStatic();//通过对象名调用,不推荐,编译时会被翻译成下一行的方式
Student.aStatic();//通过类名调用,推荐
//对于本类的静态方法,可以省略类名称
- 静态不能访问非静态。原因:在内存中先有静态的内容,后有非静态的内容。
- 静态方法中不能使用this。原因:this代表当前对象,通过谁调用方法,谁就是当前对象。静态方法中不使用对象。