C#静态与非静态 类,成员、结构
来源:互联网 发布:nba2k18ios捏脸数据 编辑:程序博客网 时间:2024/05/29 21:29
1、静态成员需要类名去调用
2、非静态成员需要实例化去调用
3、静态方法中,只可以访问静态成员。静态类中也只能有静态成员。
4、实例中既可以访问静态成员也可以访问非静态成员;
5、不能在静态类中声明实例成员;
6、可以在实例成员中声明静态成员;
7、静态类中的构造函数:只初始化一次,但是静态类的构造函数前面也要加static
结构与类的区别:
结构中也可以有字段、属性
结构中可以有静态方法和非静态方法;
结构与类的构造函数:
1、结构中构造函数 必须只能跟字段赋值,但是不能给属性赋值;必须跟所有的字段赋值,不能选择性的给字段赋值。
2、用new声明结构是,只做了调用构造函数;
3、结构中的构造函数:定义一个结构函数不会把原来的覆盖掉。
4、类和结构都有一个默认的无参数的构造函数;
如果只是单纯的存储数据的话,使用结构节省空间,因为数据存储在栈中,而非堆中。
如果想使用面向对象的思想开发程序,推荐使用类。因为结构不具备面向对象的特征。
竞购
static 构造函数名 { ..... }
namespace SumOfList{ class Program { static void Main(string[] args) { // StaClass.add(); //静态类中不能调用非静态类 // 静态类中的方法直接通过类名调用,这里都在一个项目中,省略 StaClass.addsta(); // 第一次调用静态方法,调用之间调用构造函数 StaClass.gsta(); // 再次调用静态方法,不在调用构造函数,只调用一次 Console.ReadKey(); } } public static class StaClass { //写一个构造函数(静态类中的方法只能是静态的) static StaClass() { Console.WriteLine ("这时静态类中的静态构造函数,但是只能调用一次,调用之前初始化"); } /* public void add() // 这种声明是错误的,不能在静态来中声明实例成员 { Console.WriteLine("这个是静态类中的非静态方法"); }*/ public static void addsta() { Console.WriteLine("这个是静态类中的静态方法"); } public static void gsta() { Console.WriteLine("这是静态类中的另一个静态方法"); } }}
阅读全文
0 0
- C#静态与非静态 类,成员、结构
- c#中静态成员与非静态成员的调用
- C#中静态成员与非静态成员
- C# 静态类与非静态类、静态成员的区别
- 深入理解C# 静态类与非静态类、静态成员的区别
- C# 静态类与非静态类、静态成员的区别
- C# 静态类与非静态类、静态成员的区别
- C# 静态类与非静态类、静态成员的区别
- C# 静态类与非静态类、静态成员的区别
- 深入理解C# 静态类与非静态类、静态成员的区别
- 深入理解C# 静态类与非静态类、静态成员的区别
- 深入理解C# 静态类与非静态类、静态成员的区别
- 类中的静态成员和非静态成员(C#版)
- 静态类与非静态类,静态成员的区别
- 静态成员与非静态成员区别
- 静态成员与非静态成员
- 静态成员与非静态成员
- C# 静态成员 静态方法 静态类
- 贪心算法——活动安排
- Object::connect: No such slot 问题解决办法
- ios常用的宏定义(转载)
- php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法
- java实现定时任务的方法
- C#静态与非静态 类,成员、结构
- 社会实践调研报告-题目:大学生理财能力调查与分析
- 求欧拉函数
- 上传本地代码到GitHub
- SSH Client连接Ubuntu Server失败解法
- Android 5.0(Lollipop)事件输入系统(Input System)
- java synchronized同步静态方法和同步非静态方法的区别与举例
- core核心模块--Mat基本容器
- HTTP协议(一):知识准备