《C#高级教程》学习笔记1

这篇博客是作者学习《C#高级教程》的第一部分笔记,主要介绍了.NET体系结构,包括C#与.NET的关系、公共语言运行库(CLR)的概念、中间语言(IL)以及C#的基础知识,如第一个C#程序的编写、变量、类型推断和流程控制等。
摘要由CSDN通过智能技术生成
《C#高级教程》学习笔记1

第一天:

前注:
最近想学C#了,于是便买了一本《C#高级教程》,不过书太厚了,一千五百多页,肿么办,我想快点啃完这本书。两个月怎么样(最起码在过年前)。好吧,60天,1500页,一天25页,假设一页10分钟,那么一天四个小时,呵呵了……(大二很多课,而且快学期末要复习,难度不小)
第一章:.NET体系结构
1.1 C#与.NET的关系
C#依赖.NET,但C#只是一门语言,本身不是.Net的一部分。
C#编译器专门用于.NET,这表示用C#编写的代码总是在.NET Framework中运行。

1.2 公共语言运行库
.NET Framework的核心是其运行库执行环境,称公共语言运行库(CLR)或.NET运行库。
在CLR控制下运行的代码称为托管代码(managed code)。
在.NET中编译分为
1:将源代码编译为Microsoft中间语言(IL)。
2:CLR把IL编译为平台专用的代码。

1.2.1 平台无关性
略。

1.2.2 提高性能
(我还没学编译原理这门课,所以不懂,略)

1.2.3 语言的互操作性
各种语言交互,有VB,VC++,COM和COM+,Windows运行库。
略。

1.3 中间语言
1.3.1 面向对象和接口的支持
……
(不行了,后面的内容对现在的我太复杂了,硬看了看完即忘,还是以后再算了,跳到第二章)

第二章:
2.1 C#基础


2.2 第一个C#程序


2.2.1 代码
在文本编辑器上输入:(后辍名为cs)
using System;
namespace Wrox{
    public class MyFirstClass{
        static void Main(){
            Console.WriteLine("Hello from Wrox.");
            Console.ReadLine();
            return;
        }
    }
}


2.2.2编译与运行程序
1:设环境变量,在cmd运行
2:用vs里的Visual Stdio Tools 下的子菜单里的vs开发人员命令提示符
csc First.cs (编译) (注:在对准文件相对路径哦,像Java一样)
First.exe (运行)  


2.2.3详细介绍
//单行注释
/*多行注释*/
using System; //为了使用库类System.Console
不用using,可直接:System.Console.WriteLine("");

namespace Wrox 声明了应与类相关的名称空间。

标准的System名称空间包含了最常用的.NET类型。
System中的Console用于控制台窗口输入和输出

class MyFirstCSharpClass{} //声明一个类

public static void Main(){} //Main程序入口
该方法没有返回值,或是返回一个整数
其它太简单略

2.3变量
int i; 变量声明
其它略

2.3.1变量的初始化
变量在类或结构中的字段,如没有显式初始化,则默认为0
方法的局部变量必须在代码中显式初始化(像其它语言一样)

2.3.2类型推断
使用var关键字  (第一次在这类的程序语言中见var啊)
int someNumber=0;
变成 var someNumber=0;
例子:
using System;
namespace Wrox{
    class Program{
        static void Main(string[] args){
            var name="Bugs Bunny";
            var age=25;
            var isRabbit=true;
            Type nameType=name.GetType();
            Type ageType=age.GetType();
            Type isRabbitType=isRabbit.GetType();
            Console.WriteLine("name is type " + nameType.ToString());
            Console.WriteLine("age is type "+ageType.ToString());
            Console.WriteLine("isRabbit is type "+isRabbitType.ToString());
        }
    }
}
输出:
name is type System.String
age is type System.Int32
isRabbit is type System.Boolean
规则:
1:变量必须初始化
2:初始化器不能为空
3:初始化器必须放在表达式中
4:不能把初始化器设置为一个对象,除非在初始化器中创建了一个变量

2.3.3 变量的作用域
与其它语言差不多,各种略
注:不能在同一作用域定义两个相同名字的变量

2.3.4 常量
const 简单略

2.4预定义数据类型
……各种整型与浮动型等,略
注:C#认可的基本预定义类型没有内置于C#语言中,而是内置于.NET Framework中。
CLR通过CTS(通用类型系统),实现严格的类型和代码验证,来增强代码鲁棒性。

2.4.4预定义的引用类型
object(CTS类型是System.Object)。
可以使用object引用绑定任何子类型的对象。以后细说object。
string(System.String)亦是引用类型
string初始化事项,与其它语言差不多,简单略
string s=@"a\a";用@表示字符串中没转义。

2.5流程控制

2.5.1
1.if语句略
2.switch语句也略

2.5.2 循环更略

2.5.3
goto名声差
break continue return全略略

各种跳过与略,进度45页,1517-45=1472页 2014.12.2
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值