*C#基本概念:
- C#是由C和C++衍生出来的一种安全的、稳定的、简单的、优雅的面向对象编程语言。
- C#是面向对象的编程语言。
- C#运行于.NET Framework和.NET Core(完全开源,跨平台)之上的高级程序设计语言。
*C#语言特点:
类:一个基本的C#类中包含数据成员、属性、构造器和方法。属性可以是静态或实例成员。在C#中类的声明与C++和Java很相似。但是,C#结构体与类是不支持继承多个父类。与Java相同的是,一个结构体可以实现接口(interface)。Java的关键字import已经被替换成using,它起到了同样的作用。
类可以是抽象的和不可继承的:一个被申明成abstract的类不能被实例化,它只能被用做一个基类,C#关键字lock就像Java关键字final,它(lock)申明一个类不是抽象的,但是它也不能被用做另一个类的基类接口。
布尔运算:布尔常量true和false是C#中的关键字。错误处理方式:和Java一样,通过抛出和捕捉异常对象来管理错误处理过程。
内存管理:由底层.NET框架进行自动内存垃圾回收。
接口强类型:C#是一个强类型的语言,它的数值类型有一些可以进行隐式转换,其他的必须显式转换,隐式转换的类型只能是长度短的类型转换成长的类型,int可以转换成long、float、double、类,反之必须显式的转换。
预编译:C# 中存在预编译指令支持条件编译、警告、错误报告和编译行控制。可用的预编译指令有:#define,#undef,#if,#elif,#else,#endif,#warning,#error,#line。
操作符重载:一些操作符能够被重载,而另一些则不能.特别的是,没有一个赋值运算符能够被重载。能够被重载的单目操作符是:+ - ! ~ ++ -- true false 能够被重载的二元运算符是:+、 - 、*、 /、 %、 &、 |、 ^、 << 、>>、 ==、 !=、 >、 < 、>= 、<=。
类型:C# 中的类型一共分为两类,一类是值类型(Value Type),一类是引用类型(Reference Type)。
*C#数据类型
基本数据类型:bool、byte、sbyte、short、ushort、int、uint、long、ulong、float、double和decimal。每个数据类型都有有符号和无符号两种类型。C#新的数据类型是decimal数据类型,对于货币数据,它能存放28位10进制数字。
*C#所开发的程序源代码并不是编译成能够直接在操作系统上执行的二进制本地代码。与Java类似,它被编译成为中间代码,然后通过.NETFramework的虚拟机——被称之为通用语言运行库(CLR)——执行。
*C#关键字
abstract | as | base | bool | break | byte | case | catch | char | checked |
decimal | default | delegate | continue | double | do | else | enum | event | explicit |
finally | fixed | float | for | foreach | get | goto | if | implicit | const |
in | int | interface | internal | is | lock | long | new | null | object |
partial | out | namespace | override | private | ref | readonly | public | return | protected |
short | set | stackalloc | sizeof | static | this | struct | throw | try | switch |
typeof | uint | unchecked | ulong | unsafe | void | ushort | using | value | virtual |
volatile | where | while | yield | class | true | extern | false | sbyte | sealed |
*C#是面向对象的编程语言。 面向对象编程的四项基本原则为:
- 抽象:将实体的相关特性和交互建模为类,以定义系统的抽象表示。
- 封装:隐藏对象的内部状态和功能,并仅允许通过一组公共函数进行访问。
- 继承:根据现有抽象创建新抽象的能力。
- 多形性:跨多个抽象以不同方式实现继承属性或方法的能力。