码迷,mamicode.com
首页 > 编程语言 > 详细

java篇 之 静态

时间:2019-05-05 11:55:24      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:静态存储区   static   共享   实例   执行   类继承   类变量   声明   顺序   

Final:不可改变

Static:静态修饰符,在编译阶段就能确定了,可以修饰成员变量,相应的称之为静态变量

是一个共享的变量(被这个类和这个类所产生的对象所共享的,他是唯一的,出生时间 为类第一次产生时创建只加载一次)静态变量也叫类变量(类名.静态   对象.静态)(因为静态是唯一的,而非静态是new一次产生一次,所以要确定是哪一个对象的成员)

 

成员变量 --->实例变量           判断标准为有无static

--->静态变量(static)(存放在静态存储区)

 

静态方法static:静态变量(方法)不能访问非静态变量,但是可以访问静态变量

它可在类的对象被创建之前就被调用,当实例变量未产生时已经被调用,不能调用实例(可以直接用 类名.静态方法 调用 与普通方法不一样(对象 . 方法))同一个类中的静态方法能互相调用(因为不涉及到实例变量)

this.count/super 不可用,因为对象没产生

使用:预处理,与对象无关的方法

 

 

 

 

 

Static静态代码块:只加载一次(因为它是确定的)

 

动态(普通)代码块:new一次,加载一次

静态代码块和静态成员变量是按java代码执行规则按顺序执行的

 

 import static java.lang.Math.PI;(导入类里面的静态成员)

可以直接使用PISystem.out.println(PI)

import static java.lang.Math(也可以,包含了PI,但是浪费了空间,用啥导入啥)

 

static final修饰的属性,只能在声明的时候或者在static代码中赋值,而且只能赋一次值。

final修饰类,该类不能子类继承

final修饰属性,该属性只能赋值一次

final修饰方法,该方法不能被重写

 

静态成员变量不赋初值会有默认值,此时它还可以被赋值一次,之后就不可改变值了,若是一开始就赋初值了那就不可以再改变值了!!!

java篇 之 静态

标签:静态存储区   static   共享   实例   执行   类继承   类变量   声明   顺序   

原文地址:https://www.cnblogs.com/wskb/p/10811997.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!