【知了堂学习笔记】Java中static关键字的一些简单使用方法
2017-08-31 19:29
731 查看
主要讲述的是静态关键字可以修饰变量、方法以及内部类、静态块。
一、静态变量:
当一个变量被static所修饰后,这个变量就是一个静态变量,一个类中,一个static变量只会有一个内存空间,虽然有多个类的实例,
但是这些类实例中的这个static变量都是共享了一个内存空间,被类的所用对象使用,使用方法直接“类名.变量名”。
static的变量是在类装载的时候被初始化的,也就是只要类被装载,不管是否使用了static变量,都会被初始化。
非静态变量在使用的时候需要new一个对象,通过这个对象去访问类里面的变量。
二、静态方法
与静态变量一样,也是使用static来进行修饰的,这种方法被叫做静态方法,一个静态方法只能静态方法与静态变量没有什么太大的变化,
使用方法直接就是“类名.方法”。
1.一个类的静态方法只能访问静态变量。
我们经常使用的主方法就是一个静态方法。
三、静态块
在java中使用static关键字声明的代码块。静态块用于初始化类,为类的属性初始化。每个静态代码块只会执行一次。
由于JVM在加载类时会执行静态代码块,所以静态代码块先于主方法执行。
运行结果:
通过这段代码会发现静态代码块的执行优先于构造方法和非静态代码块的,非静态代码块优先于构造方法。
注意:1静态代码块不能存在于任何方法体内。2静态代码块不能直接访问静态实例变量和实例方法,需要通过类的实例对象来访问。
一、静态变量:
当一个变量被static所修饰后,这个变量就是一个静态变量,一个类中,一个static变量只会有一个内存空间,虽然有多个类的实例,
但是这些类实例中的这个static变量都是共享了一个内存空间,被类的所用对象使用,使用方法直接“类名.变量名”。
static的变量是在类装载的时候被初始化的,也就是只要类被装载,不管是否使用了static变量,都会被初始化。
非静态变量在使用的时候需要new一个对象,通过这个对象去访问类里面的变量。
二、静态方法
与静态变量一样,也是使用static来进行修饰的,这种方法被叫做静态方法,一个静态方法只能静态方法与静态变量没有什么太大的变化,
使用方法直接就是“类名.方法”。
1.一个类的静态方法只能访问静态变量。
2.静态方法中不能定义一个静态变量,在方法内部定义的叫“局部变量”,而不是静态变量,局部变量不能加static,
包括protected,private,public这些也不能加。静态变量是定义在类中,方法体外面的。
我们经常使用的主方法就是一个静态方法。
三、静态块
在java中使用static关键字声明的代码块。静态块用于初始化类,为类的属性初始化。每个静态代码块只会执行一次。
由于JVM在加载类时会执行静态代码块,所以静态代码块先于主方法执行。
运行结果:
通过这段代码会发现静态代码块的执行优先于构造方法和非静态代码块的,非静态代码块优先于构造方法。
注意:1静态代码块不能存在于任何方法体内。2静态代码块不能直接访问静态实例变量和实例方法,需要通过类的实例对象来访问。
四、static修饰内部类
静态关键字不仅可以修饰变量和方法,还可以修饰内部类,普通类似不被允许被static修饰的,
只有内部类才可以,被static修饰的内部类可以直接作为一个普通类来使用,而不需实例一个外部类,
相关文章推荐
- Java学习笔记——static关键字与静态的使用方法
- Java学习笔记十七:Java中static使用方法
- java学习笔记(六)关键字static的使用
- Java学习笔记---一些关键字的使用
- APIDemo学习笔记——Android上几种简单的Animation使用方法(二)
- Java学习笔记27:模板Velocity使用方法
- Java学习笔记2:当构造方法有多个参数时考虑使用Builder
- 《黑马程序员》java笔记->【02】关于Static静态方法的一些注意事项
- java学习笔记——jsp简单方法读取txt文本数据
- java学习笔记之使用MyEclipse编写一个简单的登陆界(一)
- APIDemo学习笔记——Android上几种简单的Animation使用方法(二)
- Java学习笔记---12.面向对象编程07-Java中的static关键字用法
- Java学习笔记11:在公共类中使用访问方法而非公有域
- java学习笔记(static和final关键字)
- APIDemo学习笔记——Android上几种简单的Animation使用方法(一)
- 工作之余,整理了一下平时处理数据的一些常用的,简单的方法。希望对学习JAVA的朋友有点帮助
- Java学习笔记四:static关键字
- 学习C#的一些笔记(关于继承与多态,static关键字)
- java学习笔记---Java中批处理SQL的使用方法(JDBC)
- Java学习笔记(二)最近使用eclipse时遇到的一些故障