什么是.Net以及.Net的基本语法
什么是.Net?
1. 通常意义所说的有5个组成部分,但最主要的部分是.NET Framework, .NET Framework实际上是运⾏在Windows操作系统的⼀个应⽤程序,⼀个可供⼆次开发的类库。.NET Framework包括以下组件:
公共语⾔运⾏库(CLR)writeline方法的作用
 基础类库(BCL)
数据库访问组件(ADO.NET和XML)
基于ASP.NET编程框架的⽹络服务(Web Service)和⽹络表单(WebForms)
Windows桌⾯应⽤界⾯编程组件(WinForm).
2..NET是微软公司和sum公司的结果
3. 狭义的是指 Framework,。 Framework核⼼是CLR(公共语⾔运⾏时)
4..Net可以使⽤多种语⾔来开发应⽤系统
.Net的运⾏机制?
源代码
中间语⾔IL
(Intermediate Language)
CLR(Common Language Runtime)公共语⾔运⾏库
第⼆次编译
机器码(可执⾏的最终代码)
在中,编译分为两个阶段:
1.把原代码编译为中间语⾔(IL)
2.CLR把IL编译为平台专⽤代码.
.Net常见的术语?
Mircorsoft中间语⾔(Microsoft Intermediate Languane)MSIL
通⽤类型系统(Common Type System) CTS
公共语⾔规范(Common Language Specification ) CLS
公共语⾔运⾏库(Common language Runtime) CLR
托管代码(Manged Code)
即时编译(JIT)
.Net能够使⽤多语⾔开发的原因(语⾔互操作的原因)?
1. 所使⽤的语⾔必须遵守公共语⾔规范。
2. 进⾏第⼀编译后,在中间语⾔⾥,类型都变成了统⼀的(通⽤类型系统)。
3. CLR进⾏⼆次编译,编译成机器码。
c#基本语法?
变量
1.〉在C#中声明变量⽤如下语法:
datatype identifier 即:数据类型变量名
注意:
在C#中变量必须先声明后使⽤(强类型语⾔)
C#严格区分⼤⼩写
变量必须以字母或者下划线开头,但变量名中可以包含数字
Int num 对
Int _num 对
Int 2num 错
不能把C#关键字作为变量名
2.〉变量的作⽤域
变量的作⽤域就是变量在代码当中能起作⽤的范围。⼀般情况下有以下规则:
(1)      字段(变量)所属的类在某个作⽤域内,那么变量也在该作⽤域内起作⽤。
(2)      局部变量(指包含在函数中的变量)的作⽤域存在于该变量所在的块语句或⽅法结束的封闭的⼤括号之前。
(3)      在for,while或类似语句中声明的局部变量存在于该循环体内。
3.〉局部变量的作⽤域冲突
⼤型程序在不同的部分使⽤相同的变量名是很常见的,但要注意,同名的变量不能在程序的同⼀作⽤域声明两次。
using System;
namespace ScopeTest
{
class Test
{
[STAThread]
static void Main(string[] args)
{
//            int i=20;
//            int i=30;//不可以,同名的局部变量不能在同⼀作⽤域内声明两次。
//以下的变量声明⽅法可以
for(int j=0;j<10;j++)
{
Console.WriteLine(j);
}
//在这个地⽅,j的作⽤域已经⽆效,所以可以重新声明⼀个j
for(int j=9;j>=0;j--)
{
Console.WriteLine(j);
}
}
}
}
4.〉字段和局部变量的作⽤域冲突
有的时候,可以区分名称相同、作⽤域相同的两个标识符。此时编译器允许声明第⼆个变量因为C#使
变量之间有个基本的区分,把声明为类级的变量看作是字段,⽽把⽅法中声明的变量看作是局部变量。考虑下边的代码:
using System;
namespace ScopeTest1
{
///<summary>
/// Class1 的摘要说明。
///</summary>
class Test
{
///<summary>
///应⽤程序的主⼊⼝点。
///</summary>
static int j=20;
[STAThread]
static void Main(string[] args)
{
int j=30;
Console.WriteLine(j);
}
}
}
虽然在同⼀作⽤域内声明了两个j,但第⼀个j定义在类的级别上(static),在该类被删除以前都有效。此
时,第⼆个变量j隐藏了同名的类级变量j,局部变量在起作⽤。所以结果为 30。那么,如果要使⽤类级变量怎么办?可以使⽤object.fieldname。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。