C#基础知识整理:C#基础(1)

来源:互联网 发布:软件著作权办理时间 编辑:程序博客网 时间:2024/05/16 23:57

C#基本结构

using System;using System.Collections.Generic;using System.Text;namespace ConsoleApplication1{    class MyFirstClass    {        static void Main(string[] args)        {            Console.WriteLine("Hello world!");            Console.ReadLine();        }    }}

(1)、变量定义
<type> <name>;
例,MyFirstClass myFirstClass;
(2)、如何变量的初始化
int a = 0;
string str=string.Empty;
int init = a*2;
(3)、变量的作用域
首先应该弄清楚private,protected、internal和public的各自作用域。
private-完全私有,只有在本类中才能调用,子类或其它类均不能调用,继承时,子类也不能继承private的属性或方法。
protected-和private一样,但区别在于,protected中子类可以访问并继承成员和方法。
internal-公开的,在同一个程序集中都可以访问,其它程序集则不可以访问。
public-完全公开的,只要在一个项目中都可以访问,不过不同的程序集的话,需要引用其所在的程序集。
那么由这些类型声明的变量的作用域与它们的作用范围一样;
一般的变量的作用域如下:
a、变量所属类在某个作用域,属性或方法也在作用域中。
b、局部变量的作用域,声明该变量的块语句或方法结束的大括号之前。
(4)、常量
在声明变量时,在变量前面加上const 关键字就可以把该变量指定为一个常量。
注意:
  a 常量必须在声明的时候就初始化,而且其赋值后就不能再更改了。
  b 常量总是静态(static)的,不必在声明常量时添加static关键字。
(5)字符串处理
字符串处理应该会用的比较多。常用有如下:
            string testString = @"Hello,world!";
            testString.Substring(0, 1);
            testString.Trim();
            testString.TrimEnd('\n');
            testString.TrimStart('0');
还有诸于,contains,startwith,endwith的等等,在vs中.就可以看到所有的方法和属性。
(6)使用正则表达式
正则在项目中应用还是比较多的,可参考如下文章:
正则字符描述:http://blog.csdn.net/yysyangyangyangshan/article/details/6798052;
常用正则:http://blog.csdn.net/yysyangyangyangshan/article/details/7105691。
(7)、什么是CTS类型?
一个给定的程序集可能包含任意数量的不同"类型"。在.NET领域里,类型(type)是一个一般性的术语,它指的是集合{类,接口,结构,枚举,委托}里的任意一个成员。当用支持.NET的语言构建解决方案时,很有可能要与这些类型打交道。例如,程序集可能定义了一个类,它又实现了一些接口。或许其中某个接口方法采用枚举类型作为输入参数,而在调用时返回一个结构。

CTS(公共类型系统)是一个正式的规范,它规定了类型必须如何定义才能被CLR承载。通常,只有那些创建针对.NET平台的工具或编译器的人才对CTS的内部工作非常关心。但是,对于所有.NET编程人员来说,学习如何在自己使用的语言中使用由CTS定义的5种类型,是非常重要的。这里简单概括一下。
每一种支持.NET的语言至少要支持类类型(class type)的概念,这是面向对象编程(OOP)的基础。类可能由很多成员(诸如属性、方法和事件)和数据(字段)组成。在C#中,使用class关键字来声明类:
// C#类类型。
class Calc
{
    public int Add(int x, int y)
    {
        return x + y;
    }
}

表 CTS类类型

类的特征

在生命周期里的意义

类是否被“密封”

密封类不能作为其他类的基类

类实现任何接口了吗

接口是抽象成员的集合,它在对象和对象的用

户间提供一个契约。CTS允许类或结构实现任

何数目的接口

类是具体的还是抽象的

抽象类是不能直接创建的,但是可以用来为派

生类型定义公共的行为。具体类可以直接创建

这个类的可见性是什么

每个类必须设置可见性。基本上,可见性定义了

该类是被外部程序集使用,还是仅能在定义了它

的程序集中使用


(8) 数据类型如何分类以及各个数据类型范围?
http://blog.csdn.net/yysyangyangyangshan/article/details/7490939
(9)操作符
括号操作符
格式()
点操作符
格式 (E.I)
其中E是基本表达式或者预定义类型,I是一个标识符。C++里除了"."之外还有"::" "->",C#里用点操作符来代替。比如一个类T有成员变量M,在C++里用T::M来引用,C#里用T。M来引用。另一点不同的是,C#里预定义类型也是从Object类派生出来的,因此也定义了成员变量,比如,I是一个short类型的变量,那么I。ToInt()操作将返回一个Int类型的值。
后缀加减操作符
格式:p++;p--; ++p; --p;
结果是给变量p加1或减1
new操作符
格式:a, new 类型(参数列表)
b,new 数组类型初始化列表
c,new 代表类型(表达式)
typeof操作符
该操作返回一个类型对应的system。type,如:
typeof(int); typeof(System。Int32); typeof(string);
各自的结果为int32,int32,string。typeof只对类型操作,不能对变
量操作,例如,"int I;typeof(I);"是不合法的

sizeof操作符
该操作可获得一个类型所占用的空间大小,以字节为单
位。该操作符用在unsafe模块中,如
Unsafe{
S=sizeof(int);
}
或者在调用该操作符的函数中使用该前缀。
单目操作符
(1)+-操作
(2)逻辑非:!(表达式)
(3)位非:~(表达式)
(4)强制类型转换: (T) 表达式
关系运算符
==,!=,,=, is
is用来判断一个变量是否是某一类型,例如,s is string
位逻辑操作符
&(位与),|(位或),^(异或)。可以对整数,布尔,和枚
举类型进行这三种操作。
条件逻辑操作符
包括&&(与)和||(或)
条件运算符
b x:y
b为真,结果是x,否则是y

原创粉丝点击