java基础部分的statiic讲解~
通常我们写一个project 需要创建类对吧, 那么问题来了。
static!静态关键词
不废话。直接总结,后面详细说明。
//static修饰了属性 就变成静态成员
//一般来说必须通过实例去访问
//如果用了static 那么可以直接通过类名去访问
//这个形似 类名.成员 明白了吗
//举个例子 public static void method(){}这样就可以 通过类名直接访问 但同时也可通过对象来访问呢
//但是要注意 被 private修饰的属性(划重点) 那么就不可以被外部类去访问 publiic以后就可以访问
//静态方法不能直接访问非静态成员(方法和属性)
//那么非静态方法 可以 直接调用 静态成员
1.static修饰了属性 就变成静态成员 一般来说必须通过实例去访问 如果用了static 那么可以直接通过类名去访问
举个栗子
这边我们写了个类car对吧
他的属性 name 和price 都没有 static 。所以我们在main 函数里new一个car叫car1, 那么我们可以直接给他赋值,没毛病。
but, 如果我们加上了static呢?
来我们测试一哈。
awesome~ 这时候我们可以直接通过 类名+“.” 的方式来访问name属性咯。
此时此刻,划重点,我直接new一个car1还能访问name吗,ok完全没什么问题。
***这边有个tip,如果这个属性被private修饰了,那么就不可能被类直接访问 看代码报错了
***tip2
被static修饰的属性,具有唯一性 只执行一次。
唯一性是个什么几把玩意呢?就是说被new出来对像赋值之后,这个属性有唯一性,不能被第二个new 出来对象再次中出hhhh