c# 基础学习 2
来源:互联网 发布:csrf攻击php 编辑:程序博客网 时间:2024/05/21 21:45
1
抽象类在某种程度上与接口类似,但是,它们大多只是用在当只有少数方法由基类声明由派生类实现时。
interface IMyInterface
{
void MethodToImplement();
}
以上代码定义了接口 IMyInterface。通常接口命令以 I 字母开头,这个接口只有一个方法 MethodToImplement(),没有参数和返回值,当然我们可以安装需求设置参数和返回值。
命名空间
namespace;
using System;
namespace first_space
{
class namespace_cl
{
public void func()
{
Console.WriteLine("Inside first_space");
}
}
}
{
class namespace_cl
{
public void func()
{
Console.WriteLine("Inside second_space");
}
}
}
class TestClass
{
static void Main(string[] args)
{
first_space.namespace_cl fc = new first_space.namespace_cl();
second_space.namespace_cl sc = new second_space.namespace_cl();
fc.func();
sc.func();
Console.ReadKey();
}
}
输出
Inside first_space
Inside second_space
3
datelist[dataid]=(object)data
4
在 C# 中,预处理器指令用于在条件编译中起作用。与 C 和 C++ 不同的是,它们不是用来创建宏。一个预处理器指令必须是该行上的唯一指令。
5
#define DEBUG
#define VC_V10
using System;
public class TestClass
{
public static void Main()
{
#if (DEBUG && !VC_V10)
Console.WriteLine ("DEBUG is defined");
#elif(!DEBUG && VC_V10)
Console.WriteLine("DEBUG is defined");
#endif
Console.ReadKey ();
}
}
6
public virtual void WriteByte(
byte value
)
将一个字节写入流内的当前位置,并将流内的位置向前提升一个字节。
7
特性
是用于在运行时传递程序中各种元素(比如类、方法、结构、枚举、组件等)的行为信息的声明性标签
8
属性
它们使用 访问器(accessors) 让私有域的值可被读写或操作。
public class Person
{
private string _name;
public string Name
{
get { return _name; } //可以通过 Person的实例来访问Name,返回私有变量_name的值
private set { _name = value; }//不允许外部赋值,只能在Person内部赋值,value就是赋过来的值
}
}
例如 若无private
person.Name="abcd" value="abcd" _name="abcd"
9
索引器(Indexer) 允许一个对象可以像数组一样被索引
element-type this[int index]
10
委托
是存有对某个方法的引用的一种引用类型变量。引用可在运行时被改变。
public delegate int MyDelegate (string s);
委托的多播
委托对象可使用 "+" 运算符进行合并。一个合并委托调用它所合并的两个委托。只有相同类型的委托可被合并。"-" 运算符可用于从合并的委托中移除组件委托。
// 创建委托实例
NumberChanger nc;
NumberChanger nc1 = new NumberChanger(AddNum);
NumberChanger nc2 = new NumberChanger(MultNum);
nc = nc1;
nc += nc2; // 调用多播
nc(5);先将5带入AddNum中 ,然后再带入MultNum
11
扩展
http://www.cnblogs.com/lxblog/archive/2013/04/25/3041826.html
12
System.Action 无返回值
System.Func 有返回值
阅读全文
0 0
- c# 基础学习 2
- C#基础学习2---总结
- c#学习(基础2)
- c#学习 2/22 c#基础介绍
- 【C#学习】C#基础
- 【C#基础学习】学习日记2
- 黑马程序员--学习C#基础2
- 黑马程序员--c#基础学习笔记2
- C#基础学习之【2】数据类型
- 基础学习 C#之一
- C#基础学习simple
- C#学习笔记(基础)
- C#基础学习笔记
- C# 基础学习笔记
- C#基础学习。
- C# 基础学习笔记
- C#学习笔记(基础)
- C#委托基础学习
- Qt on Android调用so库的问题------
- 素数筛法
- linux系统文件权限修改
- 【原创】微信开发教程(一)配置微信服务器与内网穿透
- HDU
- c# 基础学习 2
- Ubuntu 16.04下配置深度学习库caffe
- 搭建QT+Sqlite3嵌入式开发环境
- [js高手之路] es6系列教程
- 邻接表模板
- 初入门linux
- 阻止a链接默认行为(不刷新页面更新验证码)
- 忙碌的一天
- linux显示小数