C#基本语法
C#是一种面向对象的编程语言。在面向对象的程序设计中,程序由各种相互交互的对象组成。相同类的对象常常具有相同的类型或者说都在同一class中。
首先以一个类Circle类来举例
添加类
在资源视图下,右键点击命名空间,选择 添加--类(C)... 弹出对话框中录入类名称--添加(A)
完成后IDE会生成对应的类结构代码
写入类相关的代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Chapter01_001
{
class Circle
{
//成员变量
const double PI = 3.1415926;
double radius;
//成员函数为 radius进行赋值
public void AcceptValue(double r)
{
this.radius = r;
}
//获取圆形的面积
public double GetArea()
{
return PI * radius * radius;
}
//显示数据
public void Display()
{
Console.WriteLine("Radius:{0}",radius);
Console.WriteLine("Area:{0}", GetArea());
}
}
}
在原来的Main方法(入口方法)中生成这个类的对象,并调用类的方法来执行相关的动作
找到原来的入口Main方法,添加代码如下
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Chapter01_001
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World");
/*
生成Circle类的对象
调用类的AcceptValue()方法为圆的半径赋值
调用类的Display()方法显示相关信息
*/
Circle c = new Circle();
c.AcceptValue(5);
c.Display();
Console.ReadKey();
}
}
}
编译并运行代码结果如下
关于Circle类
成员变量:
变量是类的属性或数据成员,用于存储数据。在Circle中有两个成员变量,一个是常量成员变量PI、另一个是成员变量radius。
成员函数:
函数是一系列执行指定任务的语句。类的成员函数在类的内部进行声明,在Circle类中有三个成员函数 AcceptValue、GetArea、Display
对类进行实例化:
通过上面的操作已经有了类,这时需要通过类来实例化出一个对象,来执行具体的操作(比如人类是一个类,但人要具体做什么事情时一定是有一个具体的对象的比如张三做什么)
实例化的过程:在Main方法中通过如下语句来进行实例化
Circle c = new Circle();
C#中的标识符:
标识符是用来识别类、变量、函数或任何其它用户定义的项目。在C#中标识符命名必须要符合如下规则:
- 标识符必须以字母开头,后面可以跟一系列的字母、数字、下划线,标识符中的第一个字符不能为数字。
- 标识符不可以包含任何嵌入的空格或符号,比如? - + ! @ # $ % ^ & * () [] {} .; : “ ‘ / \,但是是可以使用下划线的
- 标识符不可以是C#预定义的关键字
C#中的关键字:
关键字是C#编译器预定义的保留字。这些关键字是不可以用作标识符的。如果您想使用这些关键字作为标识符,可以在关键字前面加上 @ 字符作为前缀(不建议)。
在C#中有些标识符在代码的上下文中有特殊意义,这些被称为上下文关键字。
保留关键字 | ||||||
abstract | as | base | bool | break | byte | case |
catch | char | checked | class | const | continue | decimal |
default | delegate | do | double | else | enum | event |
explicit | extern | false | finally | fixed | float | for |
foreach | goto | if | implicit | in | in (generic | int |
interface | internal | is | lock | long | namespace | new |
null | object | operator | out | out | override | params |
private | protected | public | readonly | ref | return | sbyte |
sealed | short | sizeof | stackalloc | static | string | struct |
switch | this | throw | true | try | typeof | uint |
ulong | unchecked | unsafe | ushort | using | virtual | void |
volatile | while |
|
|
|
|
|
上下文关键字 | ||||||
add | alias | ascending | descending | dynamic | from | get |
global | group | into | join | let | orderby | partial |
partial | remove | select | set |
|
|
|