课程目录

0x01第一课课前准备
vs的选择与安装
常用工具/网址      http://msdn.itellyou.cn/
vs常用设置

0x02第二课
C#的语法样式  
编程风格
VS的常用功能

俩个注意点:

1.AutoSizeMode设置为GrowAndShrink(不显示可以改变大小的箭头)

2.

如果希望实数被视为 decimal 类型,请使用后缀 m 或 M,例如:
decimal myMoney = 300.5m;
如果希望实数被视为 float 类型,请使用后缀 f 或 F,例如:
decimal myMoney = 300.5f; 3.属性,字段,事件,方法,注释

0x01第一课课前准备

vs的选择与安装

推荐vs2010 理由(XP,Win7,Win8均支持)

cn_visual_studio_2010_ultimate_x86

vs2010下载地址

ed2k://|file|cn_visual_studio_2010_ultimate_x86_dvd_532347.iso|2685982720|4AE6228933DDE49D9BFA4C3467C831C2|/

C# 介绍

它是微软开发的.他需要一个运行环境.

需要.net Framework(类库集合/必须的环境支持) 的支持

变量的类型  变量的名称 =(赋值)   值

常用工具/网址

英汉词典

VMware 虚拟机

UE/notepad++

Chrome浏览器

一个必须记住的网址:   http://msdn.itellyou.cn/

vs常用设置

输入法,字体,行号,解决方案,属性页, 工具箱等…

0x02第二课

1 初遇.(讲解C#的语法样式,编程风格,以及VS的常用功能等等)

1.0       vs 工具箱(常用组件)的使用

1.1常用控件的使用,(按钮,文本框,标签,单选框)

控件:

Name 属性,

如何访问到按钮这个元素(btn)

Text 属性

在界面上显示这个元素的文本.(button1/这是一个按钮)

在C#中一个变量的生命方式为:

变量的类型  变量的名称 =(赋值)   值

赋值  将等号右边的值赋给左边.

字符串在C#中 字符串使用两个双引号表示  “ ”

每一句书写完成后,使用封号结尾(“;”)

布尔类型     True(真)  / False(假)

//注释

整数型       int age = 10; //带符号的整数

浮点型  float f = 1.111111111f; //单精度小数

double d = 0.00002; //双精度

decimal dec = 0.11111111111111111111111111111111M; //精度要求很高时

日期型       DateTime.Now   标签_时间.Text = DateTime.Now.ToString();

//当前时间

字符型       char c = '1'; //字符型

在C#中 变量名可以是中文.但是不推荐使用中文作为变量名

1.1       属性,字段,事件,方法.注释,折叠vs快捷键介绍.

蓝色小方块  à 字段

黄色小手  à 属性

绿色 结构

委托

枚举

代码段

0x03第三课

1.2       流程控制

额外的知识:

信息框.

//ctrl + e + c 注释选中

//ctrl + e + u 解除注释

触发代码段都由两次(TAB/回车)触发.

#region if 例子    使代码可折叠  快捷键 ctrl + k + s 选择第二项 region

#endregion

MessageBox.Show("你好.我是君临");  信息框 代码段  快捷键 mbox(mb也生效)

.lengh 属性  用来获取某个字段的长度.从1开始计数

Convert.ToInt32(txt_Test.Text);   数字转换函数. String - > int

int.Parse()  与Convert.ToInt32一样.

  • -> 选择结构

–      if、条件判断语句 (布尔类型)

if(true)  // 如果 (真)

…….

–      if-else、 // 如果-否则

–      if(true)

–      {

–      }else

–      {

–      }

–      if-else if

–      switch-case

  • case 4:    特殊用法
  • case 5:

0x04第四课

-> 循环结构

额外知识:

//索引   在C#中[0] 代表索引 [""]

在C#中表示代码的作用域是”{ }” ;

//var  他可以被代表任何格式  ,他的格式取决于给他赋的什么值  var a = 0;  var a = "0"; var a = 'a';

–      While、 (无限循环)

–      do-while

for         
              int a,i;
             a = ++i(i=i+1),相当于 先执行 i=i+1; 然后执行a = i;
               a = i++(a=i),相当于 先执行 a = I; 然后执行 i=i+1;
其实没有什么好纠结的,平时用++i也很少;大家知道有这种语法就好.

foreach  //从collection(集合/数组)中取出一个值并且声明一个var类型的变量来接收这个值

  • 数组
  • int[] a = new int[1];//   声明了一个整数型数组并且将数组的大小固定
  • a[0] = 1;   //正确
  • a[1] = 2;    //错误   错误原因 : 下标越界
  • 使用数组中需要注意的地方:
  • 你可以先声明一个数组但是你使用的时候必须要初始化数组,必须要给他指定数组的长度.否则造成的后果只有两个:
    • 第一个情况 new 这个关键字就是初始化对象用的.如果你没有初始化变量和你没有对它赋值时,那么你声明的对象就为  null  ->不知道是什么意思.
    • 第二个情况 : 你没有指定数组的长度(指定了长度).这时候你往数组中添加数据时(超过长度),将会出现 下标越界的异常信息.

在数组中,索引都是从0开始计数.

0x05第五课

额外的:

i == 10   在C#中比较两个变量/比较值时,使用两个等于号进行比较.

+=    在C#中偷懒的写法 等号左边的变量 = 等号左边的变量 + 等号右边的变量

  • -> 跳转语句

–      Break

  • //break;  跳出最近的循环作用域 跳出最近的循环

–      Continue

  • // continue;  //继续向下执行代码.继续执行最近的循环作用域

–      Return

  • //直接跳出最外层作用域  第一个功能
  • -> 方法(Method)/函数(Function)

方法的(可视/访问级别)级别.

//方法的书写

// private 方法修饰符 void 表示方法的返回值 Add 方法名称

private void Add()

{

}

Void  关键字表示方法无返回值

在Void的位置写上类型时,表示当前方法将返回一个我指定的类型.

Return 第二个作用  将返回值返回.!

private void WriteI() //无返回值,无参数

private int WriteI2() //有返回值,无参数

private void WriteString(string str) //有参数,无返回值

private string WriteString2(string str) //有参数,有返回值

0x06第六课

常用字符串操作方法

额外知识:

Dock 界面布局时使用.

“\r\n”    表示一个换行符

初始化器 {}

n  > 字符串的一些特性.

u  1,字符串是不可变的.

u   2,字符串是一个特殊的引用类型

引用类型  必须使用new来初始化对象.  可以是null(非官方)

u            //值类型   对象不被初始化时就存在值,而且不用使用new关键字.

u           //特殊  可空类型.   例: int? i = null;

n  “”长度为0的字符串.它和null是有区别的.

u

n  > 字符串的常用方法

u  Substring

u  字符串截取(参数1,参数2)

l  参数1  表示字符串的起始位置(从0开始)

l  参数2 表示需要截取的长度.(从1开始计数)

u  Split(‘x’) 按照char字符类型来进行分隔将字符串变成字符串数组

字符串类型来分隔的时候new string[]{"是"},StringSplitOptions.RemoveEmptyEntries

l  索引和长度必须引用该字符串内的位置。

l  参数名: length

l  错误引起的原因: 从当前位置取出超过长度的时候发生的.

l

IndexOf 搜索当前条件所在的位置

Remove [删除某个字符串/字符] [删除当前位置开始,删除的长度]

Replace 替换某个旧的字符串/字符,新的字符串/字符

0x07第七课

类库的使用

额外知识:

引入命名空间的快捷键:

Shift + Alt + F10  (单词必须全部写对.大写小写敏感)

Static   静态  (其他语言称之为全局变量.)直到程序结束后才会释放.

在静态类中,所有方法,字段等,都需要使用static来进行修饰,使用时,直接使用类名进行访问.

静态类中不允许有构造方法(函数)的存在.

它不用通过new 的关键字来初始化.直接可以使用.

类库: 通俗的讲就是封装了一大堆的方法供我们或者其他人调用..

单独的类库项目:会被编译成DLL(动态链接库.)

关键字: class

语法样式    class [关键字修饰符] 类名

类的声明方式:

MyClass m = new MyClass();     //引用类型

Private //私有的

public //公开

方法的重载: 相同的类名,不同的参数.

public void SayHellow(string Name)

{

}

public string SayHellow(string Name)

{

return "你好.";

}

相同点:  方法名相同,参数相同.

不同点:  返回值不一样

特别的方法:构造方法.

public class MyClass1

{

public MyClass1()

{

}

}

视频教程出自:http://www.xuanjics.com/thread-5-1-1.html

玄机论坛的地址:www.xuanjics.com  原创作者:君临

                    QQ交流群:16885911  

[基础篇] 玄机网C#培训课程-初级.的更多相关文章

  1. 图解Python 【第五篇】:面向对象-类-初级基础篇

    由于类的内容比较多,分为类-初级基础篇和类-进阶篇 类的内容总览图: 本节主要讲基础和面向对象的特性 本节内容一览图: 前言总结介绍: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 ...

  2. python面试题库——1Python基础篇

    第一部分 Python基础篇(80题) 为什么学习Python? 语言本身简洁,优美,功能超级强大,跨平台,从桌面应用,web开发,自动化测试运维,爬虫,人工智能,大数据处理都能做 Python和Ja ...

  3. [译]RxJS 5.X基础篇

    欢迎指错与讨论 : ) 当前RxJS版本:5.0.0-beta.10.更详细的内容尽在RxJS官网http://reactivex.io/rxjs/manual/overview.html.文章比较长 ...

  4. 《量化投资:以MATLAB为工具》连载(2)基础篇-N分钟学会MATLAB(中)

    http://www.matlabsky.com/thread-43937-1-1.html   <量化投资:以MATLAB为工具>连载(3)基础篇-N分钟学会MATLAB(下)     ...

  5. 《量化投资:以MATLAB为工具》连载(1)基础篇-N分钟学会MATLAB(上)

    http://blog.sina.com.cn/s/blog_4cf8aad30102uylf.html <量化投资:以MATLAB为工具>连载(1)基础篇-N分钟学会MATLAB(上) ...

  6. 【转载】 Spark性能优化指南——基础篇

    转自:http://tech.meituan.com/spark-tuning-basic.html?from=timeline 前言 开发调优 调优概述 原则一:避免创建重复的RDD 原则二:尽可能 ...

  7. 有评论就是我最大的动力~MySQL基础篇完结(存储引擎和图形化管理工具)

    hi 今天登上来,发现竟然有了3个评论~~加油吧! 这周的计划其实远远没有达到,然后下周还有一大堆事情...那么...周末好好玩吧~ 今天试图完结MySQL的基础篇知识,小白变为大白? 1.MySQL ...

  8. 【转】Spark性能优化指南——基础篇

    http://mp.weixin.qq.com/s?__biz=MjM5NDMwNjMzNA==&mid=2651805828&idx=1&sn=2f413828d1fdc6a ...

  9. DOM系列---基础篇

    DOM系列---基础篇   DOM (Document Object Model) 即文档对象模型, 针对 HTML 和 XML 文档的 API (应用程序接口) .DOM 描绘了一个层次化的节点树, ...

随机推荐

  1. cvpr2015总结

    cvpr所有文章 http://cs.stanford.edu/people/karpathy/cvpr2015papers/ CNN Hypercolumns for Object Segmenta ...

  2. LinuxC下获取UDP包中的路由目的IP地址和头标识目的地址

    在接受到UDP包后,有时候我们需要根据所接收到得UDP包,获取它的路由目的IP地址和头标识目的地址. (一)主要的步骤: 在setsockopt中设置IP_PKTINFO,然后通过recvmsg来获取 ...

  3. AJPFX:外汇的点差和点值

    外汇“点差”就是交易商买卖货币之间产生的差值. 要了解点差我们先解释一下“点”的含义:为了精确和方便地表示汇价,一般用5位数字表示,其中最小变化的单位就称为"点".例如:英镑美元货 ...

  4. “全栈2019”Java多线程第三十六章:如何设置线程的等待截止时间

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 下一章 "全栈2019"J ...

  5. re模块 模块

    import re findall()  烦的奥 import re # 1. findall 查找所有结果,数据不是特别庞大 lst = re.findall('a','abcsdfasdfa') ...

  6. atomic write pipe

    阅读 skynet 代码 socket_server 部分,发现对 socket 的写操作流程是这样的: 1. 各个服务(各线程)将数据写到 sendctrl_fd,这是一个 pipe 的 写端 2. ...

  7. Spring Boot使用@Async实现异步调用:自定义线程池

    前面的章节中,我们介绍了使用@Async注解来实现异步调用,但是,对于这些异步执行的控制是我们保障自身应用健康的基本技能.本文我们就来学习一下,如果通过自定义线程池的方式来控制异步调用的并发. 定义线 ...

  8. SQL Server 用户'NT AUTHORITY\IUSR' 登录失败

    今天打开网站时,突然报这个错误,平时都好好的 Cannot open database "JMECC" requested by the login. The login fail ...

  9. python学习笔记16-装饰器

    装饰器(函数) 1.函数作用域 2.高阶函数 把函数作为参数传入,这样的函数称为高阶函数,函数式编程就是指这种高度抽象的编程范式. 3.闭包  闭包就是能够读取其他函数内部变量的函数. 在本质上,闭包 ...

  10. vue路由router的三种传参方式

    方法三: 传参页面传递参数方式: this.$router.push({ path: 'indexTwoDetails', query: { "id": id } }) 接受参数页 ...