静态成员和非静态成员的区别


Posted in 面试题 onMay 12, 2012
答:静态变量使用 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

Tags in this post...

面试题 相关文章推荐
10条PHP编程习惯
May 26 面试题
Java和Javasciprt的区别
Sep 02 面试题
什么是Deployment descriptors;都有什么类型的部署描述符
Jul 28 面试题
在Java开发中如何选择使用哪种集合类
Aug 09 面试题
一个C/C++编程面试题
Nov 10 面试题
linux面试题参考答案(5)
Nov 05 面试题
在对linux系统分区进行格式化时需要对磁盘簇(或i节点密度)的大小进行选择,请说明选择的原则
Nov 24 面试题
Linux面试经常问的文件系统操作命令
Nov 05 面试题
异步传递消息系统的作用
May 01 面试题
介绍下Lucene建立索引的过程
Mar 02 面试题
JAVA中运算符的分类及举例
Sep 12 面试题
Servlet如何得到客户端机器的信息
Oct 17 面试题
C# Debug和Testing相关面试题
Oct 25 #面试题
C#中有没有运算符重载?能否使用指针?
May 05 #面试题
const和static readonly区别
May 20 #面试题
某公司C#程序员面试题笔试题
May 26 #面试题
C#里面如何判断一个Object是否是某种类型(如Boolean)?
Feb 10 #面试题
C#里面可以避免一个类被其他类继承么?如何?
Sep 26 #面试题
extern是什么意思
Mar 10 #面试题
You might like
php分享朋友圈的实现代码
2019/02/18 PHP
php无限极分类实现方法分析
2019/07/04 PHP
js限制文本框为整数和货币的函数代码
2010/10/13 Javascript
基于jquery的给文章加入关键字链接
2010/10/26 Javascript
JavaScript window.document的属性、方法和事件小结
2012/10/24 Javascript
ParseInt函数参数设置介绍
2014/01/02 Javascript
node.js中使用node-schedule实现定时任务实例
2014/06/03 Javascript
使用JQ来编写最基本的淡入淡出效果附演示动画
2014/10/31 Javascript
jQuery实现的checkbox级联选择下拉菜单效果示例
2016/12/26 Javascript
jQuery中DOM节点删除之empty与remove
2017/01/20 Javascript
微信小程序 动态传参实例详解
2017/04/27 Javascript
微信小程序获取微信运动步数的实例代码
2017/07/20 Javascript
安装vue-cli报错 -4058 的解决方法
2017/10/19 Javascript
element-ui 限制日期选择的方法(datepicker)
2018/05/16 Javascript
微信小程序实现九宫格抽奖
2020/04/15 Javascript
Layer+Echarts构建弹出层折线图的方法
2019/09/25 Javascript
javascript网页随机点名实现过程解析
2019/10/15 Javascript
Nuxt页面级缓存的实现
2020/03/09 Javascript
[53:21]2014 DOTA2国际邀请赛中国区预选赛5.21 DT VS LGD-CDEC
2014/05/22 DOTA
使用Python对微信好友进行数据分析
2018/06/27 Python
python 实现敏感词过滤的方法
2019/01/21 Python
对python 通过ssh访问数据库的实例详解
2019/02/19 Python
python-itchat 统计微信群、好友数量,及原始消息数据的实例
2019/02/21 Python
python实践项目之监控当前联网状态详情
2019/05/23 Python
python数据预处理 :数据共线性处理详解
2020/02/24 Python
Python configparser模块常用方法解析
2020/05/22 Python
python爬虫构建代理ip池抓取数据库的示例代码
2020/09/22 Python
美国最大的骑马用品零售商:HorseLoverZ
2017/01/12 全球购物
New Balance加拿大官方网站:运动鞋和健身服装
2018/11/19 全球购物
构造器Constructor是否可被override?
2013/08/06 面试题
夜大自我鉴定
2013/10/31 职场文书
大学生第一学年自我鉴定
2014/09/12 职场文书
房屋租赁协议书
2014/10/18 职场文书
学习十八届四中全会依法治国心得体会
2014/11/03 职场文书
北京青年观后感
2015/06/15 职场文书
MySQL 语句执行顺序举例解析
2022/06/05 MySQL