设为首页 加入收藏

TOP

静态成员和非静态成员的区别?
2014-11-23 23:19:46 来源: 作者: 【 】 浏览:9
Tags:静态 成员 区别

答:


静态变量使用 static 修饰符进行声明,在类被实例化时创建,通过类进行访问


不带有 static 修饰符声明的变量称做非静态变量,在对象被实例化时创建,通过对象进行访问


一个类的所有实例的同一静态变量都是同一个值,同一个类的不同实例的同一非静态变量可以是不同的值


静态函数的实现里不能使用非静态成员,如非静态变量、非静态函数等


示例:


using System;


using System.Collections.Generic;


using System.Text;


namespace Example01


{


class Program


{


class Class1


{


public static String staticStr = “Class”;


public String notstaticStr = “Obj”;


}


static void Main(string[] args)


{


//静态变量通过类进行访问,该类所有实例的同一静态变量都是同一个值


Console.WriteLine(“Class1′s staticStr: {0}”, Class1.staticStr);


Class1 tmpObj1 = new Class1();


tmpObj1.notstaticStr = “tmpObj1″;


Class1 tmpObj2 = new Class1();


tmpObj2.notstaticStr = “tmpObj2″;


//非静态变量通过对象进行访问,不同对象的同一非静态变量可以有不同的值


Console.WriteLine(“tmpObj1′s notstaticStr: {0}”, tmpObj1.notstaticStr);


Console.WriteLine(“tmpObj2′s notstaticStr: {0}”, tmpObj2.notstaticStr);


Console.ReadLine();


}


}


}


结果:


Class1′s staticStr: Class


tmpObj1′s notstaticStr: tmpObj1


tmpObj2′s notstaticStr: tmpObj2


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇大唐笔试题 下一篇什么是软件测试(What is SoftWar..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: