C#笔记1


1.如果两个namespace中定义了两个同名的类,那么引用的时候必须用命名空间的名字点起来,也可使用别名,如:

namespace A 

{  

    using B;      

    using C;     

    using Class1B = B.Class1;     

    using Class1C = C.Class1; 

}

这种声明只在本namespace中有效。

2.如果在本namespace中声明的元素名和用using引用的namespace中的元素名冲突了,那么本namespace中的元素名优先,其他隐藏。

3.string 用[ ]访问一个char,但是不可以改变这个char的值。

4.类只能单继承,接口可以多继承。

5.struct不能包含无参的显式构造函数,编译器会默认生成这样的函数,初始化struct内各个成员(用编译器的默认值)

6.程序从静态的main()函数开始执行,必须是static。

7.private的static方法在外部也无法引用到(和c++一样),但main()可以是private的。

8.引用类型实值在堆上,由垃圾回收机制回收或手动回收,它在堆栈放一个索引指向实值,值类型在堆栈上,操作实值变量就是操作操作堆栈上的变量本身。

9.引用类型:class,Interface,string,array,delegate,值类型:emun,struct

10.namespace下可放enum,struct,class,不可以放普通类型定义。

11.sealed用于修饰一个类不可以被继承,不可和abstract联用。

sealed class SealedClass {     public int x;     public int y; }

12.没有在namespace中的元素在全局域中,本项目的任何地方(可以是不同文件)都可以直接访问。

13.声明一个已经存在的namespace当作在已存在的namespace中加入新的元素,其中的成员的互相直接访问性相当于同一个namespace。

14.对于结构体,不像类那样存在继承。一个结构不能从另一个结构或类继承,而且不能作为一个类的基。但是结构可实现接口,其方式同类完全一样。

15.如果使用 new 运算符创建结构对象,则会创建该结构对象,并调用适当的构造函数。与类不同,结构的实例化可以不使用 new 运算符。如果不使用 new,则在初始化所有字段之前,字段都保持未赋值状态且对象不可用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值