C#是一种通用的, 现代且面向对象的编程语言, 发音为" C Sharp"。它是由Microsoft在Anders Hejlsberg和他的团队的领导下开发的。。净这项倡议得到了欧洲计算机制造商协会(ECMA)和国际标准组织(ISO)的批准。 C#是公共语言基础结构的语言之一。 C#非常类似于Java从句法上讲, 对于了解以下内容的用户来说很容易C, C ++orJava.
关于C#的最新文章!
总览, 基本原理, 重要关键词, 控制声明, OOP概念, 方法, 代表们, 建设者, 数组, 数组列表, String, tuple, 价值元组, 索引器, 遗产, 介面, 多线程, 异常处理, 集合和泛型, 集合命名空间, 通用命名空间, 系统命名空间, 专用命名空间, C#8.0的新增功能, Windows表格
总览
- .NET Framework简介
- .NET Framework(基本体系结构和组件堆栈)
- .NET中的托管代码和非托管代码
- 托管与非托管代码
- CIL或MSIL
- .NET Framework类库(FCL)
- C#简介
- 在C#中设置环境
- 如何为C#安装和设置Visual Studio?
- C#的演变
- C#中的Hello World
- 如何在cmd(命令行)上执行C#程序?
- 主要方法
- 熟悉Visual Studio
- 通用语言运行时(CLR)
- 公共语言运行时(CLR)的体系结构
- JIT(即时)编译器
- 垃圾收集
- Windows窗体应用程序
- C与C#
- C ++与C#
- Java与C#
- Python与C#
- 关于C#的有趣事实
- C#.NET中的类型系统统一
基本原理
- 身份标识
- 资料类型
- 变量
- 变量类型
- 隐式类型的局部变量– var
- C#中的动态类型
- var vs动态
- 二进制文字和数字分隔符
- 变量范围
- 访问修饰符
- 常数或文字
- 操作符
- 命令行参数
- 装箱与拆箱
- 拳击与开箱
- C#中的参数
- C#中的注释
- 类型转换或类型转换
- 用C#枚举
- C#中的属性
- 可空类型
- 结构体
重要关键词
- 关键词
- 作为关键字
- 是关键字
- 是vs作为运算符关键字
- 静态关键字
- 关键字类型
- 只读和const关键字之间的区别
- ref关键字
控制声明
- 决策声明
- 切换语句
- 循环
- Foreach循环
- 跳转语句(中断, 继续, 转到, 返回和抛出)
OOP概念
- 类和对象
- 嵌套类
- 类与结构之间的区别
- 早期和晚期绑定
- 构造函数的重载
- C#中的继承
- 用C#封装
- C#中的抽象
- 这个关键字
- 静态类
- 局部类
- 浅拷贝和深拷贝
- 创建对象的不同方法
- 对象和集合初始化器
- 使用指针访问结构的元素
方法
- 方法
- 方法重载
- 方法返回对象
- 方法参数
- 运行时(动态)Polymorphsim
- 方法覆盖
- 方法隐藏
- 方法覆盖vs方法隐藏
- 可选参数
- 使方法参数可选的不同方法
- 带示例的输出参数
- Ref和Out关键字之间的区别
- 匿名方式
- 部分方法
- 扩展方式
- 局部功能
代表们
- 代表们
- 谓词委托
- 行动代表
- 功能代表
建设者
- C#中的构造函数
- 默认构造函数
- 复制构造函数
- 私人建筑商
- 构造函数重载
- 静态构造函数与非静态构造函数
- 使用此关键字调用重载的构造函数
- 破坏者
数组
- 数组
- 锯齿状阵列
- 字符串数组
- 在数组中使用foreach循环
- 数组类
- 数组排序
- 数组长度
- Array.BinarySearch()方法
- 检查两个数组对象是否相等
- 数组指定维中的元素数
- 数组的LongLength属性
- 数组的等级
- 将数组作为参数传递
- 隐式类型数组
- 对象和动态数组
- 数组IndexOutofRange异常
- 降序排列数组的不同方法
数组列表
- 什么是ArrayList?
- 如何创建ArrayList?
- ArrayList类
- 数组与数组列表
- 将元素添加到ArrayList的末尾
- 从ArrayList中删除所有元素
- 从ArrayList中删除一系列元素
- ArrayList到数组的转换
- 将整个ArrayList复制到一维数组
- 从指定的索引开始将整个ArrayList复制到1-D Array
- 检查两个ArrayList对象是否相等
String
- String
- 逐字字符串字面量– @
- 弦类
- 字符串类属性
- 如何在switch语句中使用字符串
- C#中的StringBuilder
- 字符串vs StringBuilder
- StringBuilder的长度
- 从StringBuilder删除所有字符
- 检查两个StringBuilder对象是否相等
- StringBuilder的容量
tuple
- 什么是C#中的元组?
- 元组类
- 元组<T1>类
- 元组<T1, T2>类
- 元组<T1, T2, T3>类
- 元组<T1, T2, T3, T4>类
- 元组<T1, T2, T3, T4, T5>类别
- 元组<T1, T2, T3, T4, T5, T6>类别
- 元组<T1, T2, T3, T4, T5, T6, T7>类
- 元组<T1, T2, T3, T4, T5, T6, T7, TRest>类
价值元组
- C#中的ValueTuple是什么?
- ValueTuple结构
- ValueTuple <T1>结构
- ValueTuple <T1, T2>结构
- ValueTuple <T1, T2, T3>结构
- ValueTuple <T1, T2, T3, T4>结构
- ValueTuple <T1, T2, T3, T4, T5>结构
- ValueTuple <T1, T2, T3, T4, T5, T6>结构
- ValueTuple <T1, T2, T3, T4, T5, T6, T7>结构
- ValueTuple <T1, T2, T3, T4, T5, T6, T7, TRest>结构
索引器和属性
- 索引器
- 多维索引器
- 索引器超载
- 属性
- 物业限制
遗产
- C#中的继承
- 多级继承
- 使用接口的多重继承
- 构造函数中的继承
- 接口中的继承
- 抽象类
- 使用密封类防止继承
- 对象类别
介面
- C#中的接口
- 如何使用接口引用
- 如何实现具有相同方法名称的多个接口
- 抽象类和接口之间的区别
- 代表与接口
- 显式接口实现
多线程
- 多线程介绍
- 螺纹类型
- 如何创建线程
- 主线
- 生命周期和线程状态
- 螺纹类
- 安排执行线程
- 检查线程是否处于活动状态
- 连接线程
- 终止线程
- 检查线程是否为后台线程
- 命名线程并获取当前线程的名称
- 多线程中的线程优先级
异常处理
- 例外情况
- 系统级别异常与应用程序级别异常
- 如何使用多重捕获条款
- 尝试和捕获块的嵌套
- 最终使用
集合与泛型
- list
- 带示例的SortedList
- 哈希集
- SortedSet
- 带有示例的字典
- 分类词典
- 带有示例的哈希表
- 与示例堆叠
- 排队示例
- 链表
- 哈希表与字典
- SortedList与SortedDictionary
集合命名空间
- C#|堆栈类
- C#|队列类
- C#|数组类
- C#| ArrayList类
- C#|哈希表类
- C#| BitArray类
- C#| SortedList类
通用命名空间
- C#| HashSet <T>类别
- C#| LinkedList <T>类
- C#| List <T>类
- C#| SortedSet <T>类
- 字典类
- SortedDictionary类别
系统命名空间
- BitConverter类
- 控制台类
- 转换类别
- 十进制结构
- 字节结构
- 字符结构
- Int16结构
- Int32结构
- Int64结构
- UInt16结构
- UInt32结构
- UInt64结构
专用命名空间
- C#| ListDictionary类
- C#| StringCollection类
- C#| OrderedDictionary类别
- C#|混合字典类
- C#| StringDictionary类
C#8.0的新增功能
- 静态局部功能
- 范围和指数
- 范围结构
- 索引结构
Windows表格
- 什么是C#中的Windows Forms(WF)?
- 按钮控制
- 标签控制
- 单选按钮控件
- 复选框控件
- 文字框控件
- 组合框控件
- 工具提示类
- RichTextBox类别
- MaskedBox类别
- NumericUpDown类别
- DateTimePicker类
- ListBox类别
- GroupBox类别
- FlowLayoutPanel类