-
static 关键字
首先 static 关键字的作用可以用一句话来描述:方便在没有创建对象的情况下进行调用,包括变量和方法。static 也可以用来修饰类的成员变量,以及成员方法。以下我慢慢介绍
1.1静态变量的理解
在声明变量的时候使用了 static 关键字,那么这个变量就被称为静态变量。静态变量只在类加载的时候获取一次内存空间,这使得静态变量很节省内存空间。
假如腾讯公司招收了1000名新员工,那么在创建一万个 Staff 对象的时候,所有的字段(name、age 和 Company)都会获取到一块内存。员工的姓名和年纪不尽相同,但都属于腾讯公司,如果每创建一个对象,Company 这个字段都要占用一块内存的话,就很浪费。如果这个字段设置为 static,这样就只会占用一块内存,而不是1000块.这样就会很节省内存。
1.2 static变量的误区
在C语言或者C++语言中 static可以作用于局部变量的
而在Java中static是不允许用来修饰局部变量的 这是Java语法中所规定的
1.3静态变量的访问与调用
静态的成员方法 :仅能访问静态的成员方法
非静态的成员方法:能访问静态的成员变量、非静态的成员变量、非静态的成员方法。
静态变量虽然独立于对象,但是不代表不可以通过对象实例去访问,所有的静态方法和静态变量都可以通过对象实例访问(只要访问权限足够)。 this表示当前对象实例,而static静态变量被所有对象所共享,所以可以通过this访问静态变量,但是在静态方法中不能使用this关键字。静态方法可以使用“类名.方法名()”调用,所以又叫做类方法
1.4静态方法
静态方法属于这个类而不是这个类的对象;
调用静态方法的时候不需要创建这个类的对象;
静态方法可以访问静态变量。
静态方法可以使用“类名.方法名()”调用,所以又叫做类方法。
来源:https://blog.csdn.net/qq_55706127/article/details/123420730
本站部分图文来源于网络,如有侵权请联系删除。