码迷,mamicode.com
首页 > 其他好文 > 详细

Static静态变量和非静态变量

时间:2014-07-17 16:26:01      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:style   java   color   re   div   c   

Static静态变量;   不同对象共享这个变量内存空间

而非静态变量   是每个对象都有一个该变量的内存空间



public class StaticDemo {
	private int count=0;
	private static int staticCount=0;
	public StaticDemo() {
		System.out.println(++count);
		System.out.println(++staticCount);
	}
	public static void main(String[] args) {
			new StaticDemo();
			new StaticDemo();
			new StaticDemo();

	}

}

结果:

1
1
1
2
1
3

非静态输出都是一样的   静态的一直在增加


Static函数

当s修饰成员函数的时候,也表示的是改函数输赢全局函数,跟一般的成员函数不同,一般成员函数是属于某个对象的,改类型实例化多少个对象,就会有多少个该副本加载到内存中;而静态函数只加载一个副本;

//测试static函数与非static函数区别
	public void testNonStatic(){
		this.count++;
		staticCount++;
	}
	
	public static void testStatic(){
		//static函数里面不存在this
		//this.count++;  静态函数不能直接访问当前类型的非静态成员  (直接:就是说this.count;但是可以通过对象访问)
		//例如下面的实例;
			//			StaticDemo s=new StaticDemo();
			//			s.count++;
		staticCount++;
	}






Static静态变量和非静态变量,布布扣,bubuko.com

Static静态变量和非静态变量

标签:style   java   color   re   div   c   

原文地址:http://blog.csdn.net/u010634066/article/details/37901973

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