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


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...

面试题 相关文章推荐
如何强制垃圾回收
Oct 06 面试题
如何提高SQL Server的安全性
Jul 25 面试题
简述数据库的设计过程
Jun 22 面试题
网络编程中设计并发服务器,使用多进程与多线程,请问有什么区别?
Mar 27 面试题
Can a struct inherit from another struct? (结构体能继承结构体吗)
Sep 25 面试题
Linux如何为某个操作添加别名
Mar 01 面试题
Linux管理员面试经常问道的相关命令
Dec 12 面试题
软件缺陷的分类都有哪些
Aug 22 面试题
为什么需要版本控制?
Aug 08 面试题
什么是会话Bean
May 14 面试题
JDBC操作数据库的基本流程是什么
Oct 28 面试题
重写子类方法时,抛出异常的书写注意事项
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 cookie名使用点号(句号)会被转换
2014/10/23 PHP
PHP基于关联数组20行代码搞定约瑟夫问题示例
2017/11/07 PHP
YII框架学习笔记之命名空间、操作响应与视图操作示例
2019/04/30 PHP
laravel 解决Validator使用中出现的问题
2019/10/25 PHP
jquery中的$(document).ready()与window.onload的区别
2009/11/18 Javascript
jquery下onpropertychange事件的绑定方法
2010/08/01 Javascript
基于Jquery实现的一个图片滚动切换
2012/06/21 Javascript
js的隐含参数(arguments,callee,caller)使用方法
2014/01/28 Javascript
jQuery获取对象简单实现方法小结
2014/10/30 Javascript
node.js中实现同步操作的3种实现方法
2014/12/05 Javascript
jQuery实现的输入框选择时间插件用法实例
2015/02/28 Javascript
ztree获取选中节点时不能进入可视区域出现BUG如何解决
2015/12/03 Javascript
Jquery组件easyUi实现手风琴(折叠面板)示例
2016/08/23 Javascript
jQuery 判断元素整理汇总
2017/02/28 Javascript
js实现添加删除表格(两种方法)
2017/04/27 Javascript
AngularJS 将再发布一个重要版本 然后进入长期支持阶段
2018/01/31 Javascript
vue技术分享之你可能不知道的7个秘密
2018/04/09 Javascript
Vue项目webpack打包部署到Tomcat刷新报404错误问题的解决方案
2018/05/15 Javascript
node.js使用免费的阿里云ip查询获取ip所在地【推荐】
2018/09/03 Javascript
jquery3和layui冲突导致使用layui.layer.full弹出全屏iframe窗口时高度152px问题
2019/05/12 jQuery
JS控制GIF图片的停止与显示
2019/10/24 Javascript
React Ant Design树形表格的复杂增删改操作
2020/11/02 Javascript
Python中如何优雅的合并两个字典(dict)方法示例
2017/08/09 Python
python sort、sort_index方法代码实例
2019/03/28 Python
Python监控服务器实用工具psutil使用解析
2019/12/19 Python
通过代码实例解析Pytest运行流程
2020/08/20 Python
CSS改变网页中鼠标选中文字背景颜色例子
2014/04/23 HTML / CSS
英国玛莎百货美国官网:Marks & Spencer美国
2018/11/06 全球购物
菜篮子工程实施方案
2014/03/08 职场文书
国旗下的演讲稿
2014/05/08 职场文书
项目投资建议书
2014/05/16 职场文书
人间正道是沧桑观后感
2015/06/15 职场文书
SONY AN-LP1 短波有源天线放大器
2021/04/22 无线电
vue-router中hash模式与history模式的区别
2021/06/23 Vue.js
使用CSS实现一个搜索引擎的原理解析
2021/09/25 HTML / CSS
Java存储没有重复元素的数组
2022/04/29 Java/Android