class class1
{
private static int count = 0;
static class1()
{
count++;
}
public class1()
{
count++;
}
}
class1 o1=new class1();
class1 o2=new class1();
则o1.count的值是多少 ( ). A)值为0 B)值为1 C)值为2 D)值为3 该选什么???郁闷 私有的又怎么能被new的点出来了? 上面的是全题了 没抄错!
忘高手帮忙解答 谢谢!
{
private static int count = 0;
static class1()
{
count++;
}
public class1()
{
count++;
}
}
class1 o1=new class1();
class1 o2=new class1();
则o1.count的值是多少 ( ). A)值为0 B)值为1 C)值为2 D)值为3 该选什么???郁闷 私有的又怎么能被new的点出来了? 上面的是全题了 没抄错!
忘高手帮忙解答 谢谢!
解决方案 »
- 等待c#高手进,关于类的问题
- 關于VS2005的一個調試現像
- 用C# 生成word文档 并设置样式 同时还要输出一副图片的问题
- .net中如何与Access数据库连接
- 百分求1解决方法:) 各位走过路过千万不要错过
- 为什么总是Access Deny哦?
- 求助c#实现屏幕录像(desktop record OR Screen record)
- DataGridView不断刷新时界面运行变慢的问题
- 我的C#第一问,关于函数的参数
- 求教一个问题,vb里有的静态变量,为什么C++里找不到啊???
- 安装了VS2008完全版是不是不能安装SQL2000了
- 怎样在.NET中使用水晶报表Crystal Report呢
class1 o2=new class1();
则o1.count 编译不通过。
执行是
1.静态构造函数
2.公共构造函数
所以count应该为2class1 o2=new class1();
因为静态构造函数只执行一次,
所以只执行公共构造函数,count应该为3,count是静态变量,所以是累加的!!
私有,且静态成员
另外,题目问得有些不正确(或者说出题者故意弄陷阱),应该问class1.count 值是多少. 因为.count不是仅仅属于o1这个class1实例化后对象的.
static class1也是一样,静态构造函数,属于class1类的,在类被实例化的时候会被调用一次.(仅一次)2.选D) 3因为第一点提及的.count并不是单单属于某个对象的,而是属于class1的,static 修饰的构造函数亦是.多个class1的实例共用一个static构造函数,该静态构造函数仅会在该类第一次实例化的时候调用一次.所以是选D) 3static count = 0 -->
static class1 count++ (1) -->
class1 o1=new class1(); count++ (2) -->
class1 o2=new class1(); count++ (3)
{
class class1
{
private static int count = 0;
static class1()
{
count++;
}
public class1()
{
count++;
}
} class Program
{
static void Main(string[] args)
{
class1 o1 = new class1();
class1 o2 = new class1(); int i = o1.count; Console.ReadKey();
}
}
}编译试试看!
你可以改成public,调用class1.count因为静态的!
但count作为初值,设置为私有及静态,通过方法返回,在编称中经常是用到的!
private 只是打错了