第一个程序,采用MessageBox.Show显示小对话框:

   1: /*
   2:  * Created by SharpDevelop.
   3:  * User: feisky
   4:  * Date: 2009-10-27
   5:  * Time: 10:46
   6:  * 
   7:  * To change this template use Tools | Options | Coding | Edit Standard Headers.
   8:  */
   9: using System;
  10: using System.Collections.Generic;
  11: using System.Drawing;
  12: using System.Windows.Forms;
  13:  
  14: namespace test
  15: {
  16:     /// <summary>
  17:     /// Description of MainForm.
  18:     /// </summary>
  19:     public partial class MainForm : Form
  20:     {
  21:         public MainForm()
  22:         {
  23:             //
  24:             // The InitializeComponent() call is required for Windows Forms designer support.
  25:             //
  26:             InitializeComponent();
  27:             
  28:             //
  29:             // TODO: Add constructor code after the InitializeComponent() call.
  30:             //
  31:         }
  32:         
  33:         void BtnShowDlgClick(object sender, EventArgs e)
  34:         {
  35:             MessageBox.Show("The first Csharp app.");
  36:         }
  37:     }
  38: }

1.基本语法

  • 区分大小写
  • 注释:/* */     //         ///
  • 简单类型变量:sbyte byte short ushort int unit long ulong float double decimal char(Unicode) bool (前面的都是值类型),string(引用类型)
  • 控制台输出变量的格式:Console.WriteLine("{0}+{1}={2}",x,y,z);
  • 类型转换:Convert.ToDouble()  (int)x
  • 运算符:+ – * / % 及复合赋值运算 逻辑运算 位运算 (x<10)?x=10:x=0
  • 命名空间的使用
  • 流程控制:if..else  if…else if…else   switch…case while for  do…while   break continue
  • enum struct
  • 数组:int[] a=new int[5]; int[] a={1,2,2,2,2};  double[,] test=new double[3,4];  int[][] test;数组的数组  foreach(int i in Array)       //循环访问数组 这是一种只读访问

2.字符串处理

  • 使用 Compare、CompareOrdinal、CompareTo、Equals、EndsWith 和 StartsWith 方法进行比较。

  • 使用 IndexOf、IndexOfAny、LastIndexOf 和 LastIndexOfAny 方法可获取字符串中子字符串或 Unicode 字符的索引。

  • 使用 Copy 和 CopyTo 可将字符串或子字符串复制到另一个字符串或 Char 类型的数组。

  • 使用 Substring 和 Split 方法可通过原始字符串的组成部分创建一个或多个新字符串;使用 Concat 和 Join 方法可通过一个或多个子字符串创建新字符串。

  • 使用 Insert、Replace、Remove、PadLeft、PadRight、Trim、TrimEnd 和 TrimStart 可修改字符串的全部或部分。

  • 使用 ToLower、ToLowerInvariant、ToUpper 和 ToUpperInvariant 方法可更改字符串中 Unicode 字符的大小写。

  • 使用 Format,可将字符串中的一个或多个格式项占位符替换为一个或多个数字、日期和时间或枚举值的文本表示形式。

  • 使用 Length 属性可获取字符串中 Char 对象的数量;使用 Chars 属性可访问字符串中实际的 Char 对象。

  • 使用 IsNormalized 方法可测试某个字符串是否已规范化为特定的范式。使用 Normalize 方法可创建规范化为特定范式的字符串。

3.函数

  • 定义:static double getVal() {}
  • 参数:参数匹配 参数数组 params <type>[] <name>
  • 引用参数:get(ref int val) val必须已经初始化   在调用的时候也必须加上ref关键字
  • 输出参数:out 此参数不需要初始化 在调用的时候也必须加上out关键字
  • 结构函数:结构体中可以定义public函数
  • 重载:创建同名多个函数,但参数要求不同
  • 委托:把引用存储为函数的类型,主要用在事件的处理中
  • 错误处理:try..catch..finally

4.类的基本知识

  • 抽象类:sbstarct,不能实例化、只能继承,可有抽象成员,主要用作类的基类
  • 密封类:sealed,不能继承的类
  • 继承:只允许有一个基类,且基类只能紧跟在冒号之后
  • internal类:只能在当前工程访问
  • public类:可在任何地方访问
  • 接口interface:不能使用abstarct和sealed,不能包含字段、构造析构函数、静态成员或常量,其成员是公共的,不能包含代码提
  • 构造函数执行序列:System.Object构造函数->基类构造函数->该类的构造函数 其中,可以通过base指定基类的非默认构造函数,使用this来指定本类非默认构造函数

5.类的成员

  • public private类内访问 internal工程内访问 protected类或派生类访问 static静态成员
  • 字段:可以用readonly表示只读 也可以用const定义常量
  • 方法:static类的方法 virtual可以重写 abstract必须重写 override重写了一个基类方法 extern定义在其他地方
  • 属性:set get控制
  • base基类  this当前对象实例

转载于:https://www.cnblogs.com/xiaogelove/archive/2012/06/13/2547878.html

c# 基本语法(转)相关推荐

  1. 【JavaScript总结】JavaScript语法基础:BOM

    DOM是文档对象模型,操作对象是文档 window.document,和浏览器没有直接关系 DOM常用事件: onload,onbeforeunload, onunload onclick,ondbl ...

  2. 【JavaScript总结】JavaScript语法基础:JS编码

    运算符 数学:+. -. *. / 逻辑:>. < .>= .<=. == . !=.&&.|| . === .!==(完全等于) 对象相关 new delet ...

  3. 【JavaScript总结】JavaScript语法基础:数据类型

    ------>数据类型有哪些? ->基本类型:数字类型,布尔类型,字符串类型 ->引用类型:对象类型,函数类型 ->空类型:null 和 undefined ->运算符: ...

  4. 第二天:Vue基础语法

    1.计算属性的setter和getter 每个计算属性都有setter和getter 一般来说用到setter较少,都不希望数据被改动,所以只用getter时也有缩写 <!DOCTYPE htm ...

  5. LLVM语法语义指令特性

    LLVM语法语义指令特性 High Level Structure Module Structure LLVM 程序由Module's组成,每个 's 是输入程序的一个翻译单元.每个模块由函数,全局变 ...

  6. LLVM一些编程语法语义特性

    LLVM一些编程语法语义特性 High Level Structure Module Structure LLVM 程序由Module's组成,每个 's 是输入程序的一个翻译单元.每个模块由函数.全 ...

  7. LLVM一些语法规则

    LLVM一些语法规则 LLVM文档 LLVM编译器基础架构支持广泛的项目,从工业强度编译器到专门的JIT应用程序,再到小型研究项目. 同样,文档分为几个针对不同受众的高级别分组: LLVM设计概述 几 ...

  8. 2021年大数据Hive(四):Hive查询语法

    全网最详细的Hive文章系列,强烈建议收藏加关注! 后面更新文章都会列出历史文章目录,帮助大家回顾知识重点. 目录 系列历史文章 前言 hive查询语法 一.SELECT语句 1.语句结构 2.全表查 ...

  9. 2021年大数据常用语言Scala(十八):基础语法学习 Map对象

    目录 Map对象 不可变Map 可变Map Map基本操作 Map对象 Map可以称之为映射.它是由键值对组成的集合.在scala中,Map也分为不可变Map和可变Map. 不可变Map 定义 语法 ...

  10. 2021年大数据常用语言Scala(十七):基础语法学习 Set

    目录 Set 不可变集 可变集 Set Set(集)是代表没有重复元素的集合.Set具备以下性质: 元素不重复 不保证插入顺序 和List正好相反, List: 元素可以重复 保证插入顺序 scala ...

最新文章

  1. ORB_SLAM2中的Sim3变换
  2. WPF MVVM模式下的无阻塞刷新
  3. 【Pytorch神经网络基础理论篇】 01 从零开始介绍深度学习算法和代码实现
  4. Bootstrap 滚动监听
  5. C++之操作符重载探究(三):输出操作符重载
  6. 腾讯正式入局中视频领域
  7. Spring MVC学习笔记(七)
  8. 接口协议之抓包分析 TCP 协议
  9. css表格排序,纯CSS实现表格排序-利用CSS 变量和Flexbox
  10. Raki的读paper小记:Empower Entity Set Expansion via Language Model Probing
  11. 关于log4j的配置
  12. python13文件_python中13个实用的文件操作
  13. 雨棚板弹性法计算简图_钢结构雨篷图纸计算书
  14. 如何面对大容量的数据存储
  15. Python实现英文词频统计:以hamlet为例
  16. 【颗粒归仓】(一)jQuery easyui datagrid 的数据加载
  17. 浏览器 主页 被篡改 ,怎么都修改不回来(包括 Firefox ,google Chrome) KMS激活问题
  18. iOS内购-防越狱破解刷单
  19. 【洛谷】P3387 【模板】缩点
  20. 【键盘开箱】B.FRIENDit壁虎忍者RF1430K 2.4G无线键盘,满足办公室安静需求的无线键盘!

热门文章

  1. 让你的IE浏览器支持HTML5标准方法代码
  2. Enterprise Vault 2007 软硬件兼容性
  3. oracle学习小结3之索引
  4. 火了 2 年的服务网格究竟给微服务带来了什么?(转载)
  5. lsqnonlin函数_matlab非线性最小二乘函数
  6. WLAN定位技术——(无线信号定位2)
  7. oracle 对象定义被修改,oracle 数据对象_xspaces
  8. hdfs复制文件夹_Hadoop框架:HDFS简介与Shell管理命令
  9. php 上传excel到mysql_PHP上传Excel文件导入数据到MySQL数据库示例
  10. (二)Netty之IO模型