当我们想初始化一些静态变量的时候,就需要用到静态构造函数了。这个静态构造函数是属于类的,而不是属于哪里实例的,就是说这个构造函数只会被执行一次,即:在创建第一个实例或引用任何静态成员之前,由.NET自动调用。现在碰到这样一个场景:提供一个静态方法,这个静态方法在不同的地方使用,涉及到一个参数值...
Java中变量分为静态变量,实例变量,临时变量。他们在JVM中存储的位置如下:静态变量位于方法区实例变量作为对象的一部分,保存在堆中。临时变量保存于栈中,栈随线程的创建而被分配。附JVM结构图
分类:
其他好文 时间:
2015-06-29 23:44:40
阅读次数:
192
我们知道,在存储方式上,成员变量在JVM中是存储在堆里边的,而静态变量则位于JVM中的方法区,两者的主要区别在于,成员变量不再受引用常常会导致被回收,而方法区对垃圾回收的限制相当严苛,除非是整个应用被卸载,否则静态变量会一直存在。在android应用中使用成员变量,在退出应用之后,所有的成员变量肯定...
分类:
编程语言 时间:
2015-06-29 16:32:25
阅读次数:
124
1:Scanner的使用(了解) (1)在JDK5以后出现的用于键盘录入数据的类。 (2)构造方法: A:讲解了System.in这个东西。 它其实是标准的输入流,对应于键盘录入,in是System这个类中的最终静态变量:public static final InputStream; in ...
分类:
编程语言 时间:
2015-06-29 14:30:08
阅读次数:
109
什么变量在堆内存里存放,什么变量在栈内存里存放堆和栈的区别 (stack and heap)一般认为在c中分为这几个存储区1栈 - 有编译器自动分配释放2堆 - 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收3全局区(静态区),全局变量和静态变量的存储是放在一块的,初始化的全局变量和...
分类:
其他好文 时间:
2015-06-28 22:48:41
阅读次数:
164
static修饰的变量和方法属于类,在类加载时在内存中分配空间;
调用时可以直接通过类名调用,当通过创建对象改变的是静态变量时,那么该静态变量就改变了;
静态方法中不能直接访问非静态的成员变量和方法,可以通过创建对象访问;反之,非静态的成员变量可以访问静态的变量和方法;
可以通过构造器,初始化块和静态初始化块来给成员变量赋值;相比于构造器和初始化块在没创建一个对象时执行一次,并且初始化块在构...
分类:
编程语言 时间:
2015-06-28 17:38:44
阅读次数:
245
先上正确运行的显示:
错误1:变量为IntWritable,接收的是LongWritable,如下图:
原因,多写了参数reporter,如下图:
错误2:数组超出边界,如下图:
原因:设置了combine类,如下图:
错误3:nullpointerexception异常,如下图:
原因:静态变量为null,赋值即可,如下图:
错误4:进入了map,但是无法...
分类:
其他好文 时间:
2015-06-28 15:38:12
阅读次数:
121
//Class WechatOfferExcutor 此类为微信触发类,属于上层调用类,其中有用到用静态变量缓存offer信息,Task异步执行发送方法等using Newtonsoft.Json.Linq;using System;using System.Collections.Generic;...
分类:
微信 时间:
2015-06-26 17:38:28
阅读次数:
350
Java和C#语言中都存在Static关键字;Static变量:变量分为两种:一种是Static修饰的,叫做静态变量;另外一种是未被Static修饰的,叫做实例变量;区别在于:对于静态变量在内存中只有一个拷贝(节省内存),JVM只为静态分配一次内存,在加载类的过程中完成静态变量的内存分配,可用类名直...
分类:
其他好文 时间:
2015-06-24 20:49:53
阅读次数:
146
/// 静态全局变量 :只能在当前cpp中访问到static int s_global = 0;void funcA() { /// 静态局部变量 (函数静态变量) 初始化过一次就不会被覆盖 static int s_funcValue = 1;}class Animal {public: ...
分类:
编程语言 时间:
2015-06-23 21:27:44
阅读次数:
160