如同非常多刚開始学习的人一样,刚接触C#的时候,也是一头雾水,学习了好长时间,都搞不清楚一些基本名称是什么。什么是C#?什么是.net?什么是visual
studio?它们之间有什么关系?以下我们就从这几个问题入手,来探究C#。

关于上边的几个问题,我发现了一个神级的回答。假设我们把用开发软件比作写汉字,那么visual studio就是笔,.net
就是纸,C#就是汉字的书写规则,依次类推,我们就能够依照C#的规则,使用vs在.net上边编敲代码。

理解了这几个问题,我们就能够从C#的基础知识開始了,既然它是一种语言或者说是编程的规则,那么就能够跟我们之前学过的vb有一定联系。这两种语言必定会有共同点和不同点,我们从这些异同点入手,会更加easy理解。下边是我总结的这两种语言在语言基础的异同点。

通过比較,发现它们在语言环境、基本结构、和数据类型、运算符还是有一点区别的,C#也是微软公司开发,可是vb是基于对象的开发语言,C#是全然意义上面向对象的开发语言。C#还改进了数据类型,引入了值和引用数据类型;此外它还在基本结构上添加了命名空间,程序集等内容;相对于传统的程序控制结构,C#并没有做太大的改变,它继续沿用了传统的三大控制结构,顺序、选择和控制,仅仅是流程控制语句不太一样;运算符方面,也进行了创新,添加了溢出、兼容推断等keyword。以下是C#学习过程中的导图:

我把C#视频内容分为四个部分,公共基础部分,就是全部的程序设计语言都会有的内容;独有特征,C#所特有的部分;面向对象,C#的核心编程思想;软件project,程序设计必备知识。公共基础已经在上边提到,面向对象不是本博客探讨内容,软件project驶入案件开发内容,下边我将主要介绍C#的独有特征部分。

C#既然是一种独立于其它语言之外的编程工具,必定有它的独到之处,面向对象我们暂且不提,以下下来探讨它的独有特点。

运算符重载:运算符重载并非让运算符再出现一次,而是又一次对它进行定义,赋予它新的命令;

索引符:索引的作用就是能够让类像数组一样被标记并訪问;

字符串:C#中使用正則表達式实现字符串功能;

数据类型转换:这个功能实现了程序在执行过程中进行须要进行数据类型转换的功能。

托付:托付是一个类,它定义了方法的类型,使得能够把一个方法当做还有一个方法的參数来传递,增强了程序的可扩展性;

事件:类似于数据库中的触发器,当程序执行到某个步骤的时候,触发这个事件。

异常处理:如其它面向对象程序语言一样,当程序遇到反常情况下的异常(网络问题、文件丢失等)时,程序能够进行自行处理。

写到这里,C#的初步介绍就算完毕了,接下来会使用C#写一些程序,对C#的认识也会更加深刻。

C#初步接触的更多相关文章

  1. php大力力 [006节]初步接触认识phpMyAdmin

    phpMyAdmin 2015-08-22 php大力力006. 初步接触认识phpMyAdmin 以下是phpAdmin网络截图: 这是通过MAMP一键安装的. php中MyAdmin的使用-猿代码 ...

  2. avalon - 初步接触

    avalon - 初步接触 avalon的介绍http://rubylouvre.github.io/mvvm/ 按照作者的介绍,在HTML中添加绑定,在JS中用avalon.define定义View ...

  3. 初步接触CERNVM

    初步接触的来源是对ROOT数据分析工具的搜索,看到一个叫做Life as a Physicist的国外博客.知道了这个包含容器分发的软件,跟重要的是,这个欧洲核子中心开发的平台,对于我等科研人员是一大 ...

  4. Spring boot -环境搭建 ,初步接触(1)

    1. Eclipse 创建 maven project  项目目录如下: 2. pom.xml  配置文件 <project xmlns="http://maven.apache.or ...

  5. 为什么要使用puppet 及初步接触

    为什么要使用puppet 及初步接触   1.简介 云计算环境下,密度高,机器数量多,还要求弹性和伸缩性,这对于运维提出更高的要求.系统管理员需要经常安装操作系统,对系统参数进行配置和优化,对人员进行 ...

  6. 初步接触html心得

    接触HTML大概有七天,做一下小总结,过过记忆. html大致可分为三部分:Dtd头.Head.Body三大部分. Dtd头:是用于浏览器编辑的,也就是俗话说的给电脑看的的东西. Head:内细分下大 ...

  7. 实验记录一 初步接触cortex-M3

    应该说老早就在接触cortex-M3了.曾经没想到会接触嵌入式,结果由于导师的缘故.在选择项目管理时,就呵呵了.不废话.搭配环境非常easy,纯粹傻瓜式.可由于自己的马虎,却让自己一直困惑. 记得在前 ...

  8. java_web学习(四) 二维表的制作(初步接触MVC)

    我们需要做一个jsp页面,动态显示信息表的内容. 一.需求分析 1.  做一个实体类:StudentInfo (包含4个字段) 2.  如图模拟生成3条数据,本质上就是new StudentInfo ...

  9. Qt-QML-Loader初步接触

    先说说为什么用到了QML的Loader,这里我就要先扯点别的,那就是QML自带的ColorDialog,QML的机制 是优先调用系统提供的ColorDialog,如果系统的ColorDialog的不可 ...

随机推荐

  1. java中return和continue区别

    编程语言大多是想通的,当然java也不例外,下面的在其他编程语言也是相同的道理. return与continue的区别 先看代码哦 class demo2 { public static void m ...

  2. Javascript中闭包的作用域链

    作用域定义了在当前上下文中能够被访问到的成员,在Javascript中分为全局作用域和函数作用域,通过函数嵌套可以实现嵌套作用域. 闭包一般发生在嵌套作用域中.闭包是JavaScript最强大的特性之 ...

  3. android spinner 每行字体颜色都变化

    final static int[] COLOR_LIST={Color.WHITE,Color.WHITE,Color.GRAY,Color.YELLOW,Color.RED}; spinner=( ...

  4. WCF如何在浏览器访问

    1.新建wcf服务看到有如下两个方法,在浏览器调用框中的方法.

  5. C# 限制Text只能输入数字

    private void InputNumber(KeyPressEventArgs e) { //如果输入的不是数字键,也不是回车键.Backspace键,则取消该输入 && e.K ...

  6. UI事件之load

    load事件属于CSS3规范中的UI事件,load事件处理程序在页面元素和资源(html/script/link/img等)全部加载完成后在window上触发,或在img元素加载完成后再img元素上触 ...

  7. 改错+GetMemory问题

    试题1: void test1() { ]; "; strcpy( string, str1 ); } 试题2: void test2() { charstring[],str1[]; in ...

  8. S​Q​L​ ​S​e​r​v​e​r​中​​的​P​W​D​E​N​C​R​Y​P​T​与​P​W​D​C​O​M​P​A​R​E​函​数

    前幾天有個客戶的網站出問題(不是我們開發的),請我們幫他看,主要的問題是他們的網站會員在進行查詢密碼時,會員收到信的時候在密碼的欄位竟然會出現 System.Binary[] 字樣.而我進去資料庫中查 ...

  9. Eloquent ORM 之关联查询

    小伙伴们好,本文是在我的前一篇随笔的基础上完成的,还没有浏览的同学,请移尊驾哦 Eloquent ORM学习笔记. 前一篇文章用到了leftJoin方法,其实Eloquent对于模块之间的关联查询有自 ...

  10. python运维开发(十一)----python操作缓存memcache、redis

    内容目录: 缓存 memcache redis memcache Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数 ...