【学习笔记】C# 静态类
- 静态修饰符
- 用static修饰的成员是静态成员
- 静态成员只能由类来调用
- 用static修饰的类是静态类
- 静态类不能实例化,只能包含静态成员和const常量
- 在内存中一共有五个区域
- 1. 堆区-需要程序员手动开辟,并管理内存
- 2. 栈区-由系统自动完成内存管理
- 3. 静态区(全局区)- 层序运行过程中的数据一直存在
- 4. 常量区-用于存放常量
- 5. 代码区-存放程序运行所需要的代码
- 静态构造
- 构造方法也可以设置为静态
- 静态构造不能有参数和访问修饰符
- 不管是不是静态类,都可以有静态构造
- 静态构造会在第一次实例化或调用静态成员时调用
1 using System; 2 3 namespace StaticClassDemo 4 { 5 //静态 static 6 //静态的字段、属性或方法,只能由类调用,不能够由实例调用 7 //使用类创建对象的过程叫做实例化,对象也可以称作实例 8 9 //静态类 10 //在静态类中,只能包含静态的成员(字段、属性、方法)、const常量 11 public static class A 12 { 13 //静态字段 14 public static int i; 15 16 //构造方法 17 //1.静态构造方法前不允许添加访问修饰符 18 //2.静态构造方法可以存在于静态类中,也可以在普通类中 19 //静态构造方法 20 //静态构造方法会在首次访问类 21 /*public*/ static A() 22 { 23 Console.WriteLine("A 的静态构造方法"); 24 } 25 26 //静态方法 27 public static void Test() 28 { 29 //string str = "Li"; 30 //const int age = 19; 31 Console.WriteLine("test"); 32 } 33 } 34 //2.静态构造方法可以存在于静态类中,也可以在普通类中 35 public class B 36 { 37 public static int age; 38 //静态构造会在创建对象,并在初始化之前调用 39 static B(){ 40 Console.WriteLine("B 的静态构造方法"); 41 } 42 } 43 class Program 44 { 45 static void Main(string[] args) 46 { 47 //A a = new A(); 48 //a.i = 10; 49 //Console.WriteLine(a.i); 50 51 //直接使用类名调用静态成员 52 A.i = 10; 53 Console.WriteLine(A.i); 54 A.Test(); 55 56 B.age = 10; 57 58 B b = new B(); 59 60 //在内存中一共有五个区域 61 //1. 堆区-需要程序员手动开辟,并管理内存 62 //2. 栈区-由系统自动完成内存管理 63 //3. 静态区(全局区)- 层序运行过程中的数据一直存在 64 //4. 常量区-用于存放常量 65 //5. 代码区-存放程序运行所需要的代码 66 } 67 } 68 }
转载于:https://www.cnblogs.com/stardream19/p/7221241.html
【学习笔记】C# 静态类相关推荐
- ASP.NET Core 2 学习笔记(四)依赖注入
原文:ASP.NET Core 2 学习笔记(四)依赖注入 ASP.NET Core使用了大量的依赖注入(Dependency Injection, DI),把控制反转(Inversion Of Co ...
- java jvm学习笔记二(类装载器的体系结构)
欢迎装载请说明出处:http://blog.csdn.net/yfqnihao 在了解java虚拟机的类装载器之前,有一个概念我们是必须先知道的,就是java的沙箱, ...
- # C# 学习笔记(4) 类
C# 学习笔记(4) 类 面向对象编程主要是为了写出一个通用的代码,屏蔽差异,方便开发大型项目.类就是面向对象编程的核心之一.和C语言的结构体相比,结构体拥有的功能,类统统都有,除此之外,类还有许多新 ...
- [读书笔记]C#学习笔记三: C#类型详解..
前言 这次分享的主要内容有五个, 分别是值类型和引用类型, 装箱与拆箱,常量与变量,运算符重载,static字段和static构造函数. 后期的分享会针对于C#2.0 3.0 4.0 等新特性进行. ...
- 31天重构学习笔记下载
前言 前两天写了一篇程序猿也爱学英语(上),有图有真相的文章,写作那篇文章只是自己一时兴起,或者说是自己的兴趣使然.文中的观点只是自己的学习心得和体会,属一家之言且鉴于本人不是学英语出身,所以也肯定有 ...
- Java学习笔记之log4j与commons-logging转
Java学习笔记之log4j与commons-logging<转> (2011-02-16 11:10:46) 转载▼ 标签: 杂谈 分类: 技术学习之其他 Logger来自log4j自己 ...
- python自动化测试学习笔记合集
python自动化测试学习笔记-1 一.什么是自动化 自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程.直白的就是为了节省人力.时间或硬件资源,提高测试效率,便引入了通过软件或程序自动化执行 ...
- Go学习笔记_环境搭建
Go学习笔记_环境搭建 Go背景知识 go的特点(官网): Build fast, reliable, and efficient software at scale- Go is an open s ...
- 【Unity学习笔记】[Unity中文课堂教程] C#中级编程代码
[Unity学习笔记][Unity中文课堂教程] C#中级编程代码 最近想补一补C#基础,Unity官方的C#中级编程教程质量很高,于是开个帖子把跟着敲+记录了部分价讲解和我自己的理解的代码存在这 原 ...
- 《C++Primer》第二章-变量和基本类型-学习笔记(1)
<C++Primer>第二章-变量和基本类型-学习笔记(1) 文章目录 <C++Primer>第二章-变量和基本类型-学习笔记(1) 摘要 主体 基本(内置)类型 算数类型 整 ...
最新文章
- java for 两个条件_for循环条件里定义2个变量为什么会报错
- Hive数据导入——数据存储在Hadoop分布式文件系统中,往Hive表里面导入数据只是简单的将数据移动到表所在的目录中!...
- 【Android 逆向】ptrace 函数 ( C 标准库 ptrace 函数简介 | ptrace 函数真实作用 )
- MacDown的使用规范总结 96 卞泽 2016.04.08 15:05* 字数 1273 阅读 4295评论 10喜欢 34 MacDown是什么? 请点击here MacDown下载地址,请点
- Python教程之udp和tcp协议介绍
- 恶意软件伪装“正规军”,撕开Booster Cleaner“画皮”下的真相
- 2017 到 2018,PWA 技术到底经历了什么
- 【华为云技术分享】python教程:猴子补丁
- java httpresponse headres属性,Http Header里的Content-Type - 飞鸿影~ - 博客园
- HUD 2544 最短路 迪杰斯特拉算法
- TestNG学习(一)
- 不能错过的linux驱动开发的经典书籍推荐
- 深度对话“百度超级链” | 链上存证,司法效率助推器
- 员工考勤软件用哪款比较好啊?快看这4款实用考勤软件
- python网页登录模板
- oracle rat结果分析比较,Oracle RAT- Real Application Testing
- (glidejs)glidejs的使用
- 雷军“小米模式”最精简总结
- 递归算法和过程的详解
- js 之 call用法
热门文章
- 9-《电子入门趣谈》第一章_一切从单片机开始-1.3.6串口通信
- 医院电子病历系统信息安全解决方案
- 等保2.0 信息安全及等保标准体系概述
- 关于PROGRA~1,MICROS~1等的问题
- 计算机专业英语BD,计算机专业英语
- 关于Facebook Web端第三方登录
- ToDesk苹果怎么安装?ToDesk macOS客户端怎么安装-ToDesk安装步骤介绍
- 议程公布!2021年MongoDB中文社区杭州大会
- GEE进行项目的学习应用
- 一个笼子里面关了鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物