---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
1.面向对象程序设计技术是将数据和对数据的操作作为一个相互依赖。不可分割的整体,采用数据抽象和信息隐藏技术,使得复杂的工作条理清晰、编写容易。
2.面向对象的主要概念:
(1)抽象:是一种从一般观点来看待事物的方法,它要求开发人员集中于对事物的本质特征,而不是具体细节,采用抽象分类方法,抽取公共的属性和行为将其放入一个类中。
(2)封装:是把数据与对数据进行的操作捆绑在一起,成为一个类型的对象。封装应具备明确的功能,并提供一组接口以便和其他对象互相操作。
(3)继承:使一个类可以获得先前已定义类的全部特征,增强了代码的可重用性,提高了开发效率。
(4)多态性:指相同的函数为不同对象所接受时,可导致完全不同的行为。利用多态性,程序中只需进行一般形式的函数调用,函数的具体实现细节留给接受函数调用的对象处理。
3.类是面向对象开发方法的基本成分。类是具有相同属性和相同行为的一组对象的集合。例如动物这个类就包括所有动物共享的一些特征,如:颜色,年龄,品种,可以捕食等。
类是一个数据结构,它可能包含数据成员(常数和字段)、函数成员(方法、属性、事件、索引器、运算符、实例构造函数、静态构造函数和析构函数(现在不用了))以及嵌套类型。
4.类的成员使用举例
class Program
{
static void Main(string[] args)
{
Myclass a = new Myclass(); //构造函数的使用
Myclass b = new Myclass(100);
Console.WriteLine("Myconst ={0}",Myclass.Myconst); //常数的使用
a.Myfield++; //字段的使用
Console.WriteLine("a.Myfield={0}",a.Myfield);
a.Mymethod(); //方法的使用
a.Myproperty++; //属性的使用
Console.WriteLine("a.Myproperty={0}",a.Myproperty);
a[3] = a[1] = a[2]; //索引器的使用
Console.WriteLine("a[3]={0}",a[3]);
a.Myevent += new EventHandler(MyHandler); //事情的使用
Myclass c = a + b; //运算符的使用
Console.ReadKey();
}
static void MyHandler(object sender, EventArgs e)
{
Console.WriteLine("Program.MyHandler");
}
internal class MyNestedClass
{ }
}
class Myclass
{
public Myclass() //构造函数
{
Console.WriteLine("object is initialized");
}
public Myclass(int value) //带有参数的构造函数
{
Myfield = value;
Console.WriteLine("object is initialized");
}
public const int Myconst = 10; //常数
public int Myfield = 15; //字段
public void Mymethod() //方法
{
Console.WriteLine("Myclass.Mymethod");
}
public int Myproperty //属性
{
get
{
return Myfield;
}
set
{
Myfield = value;
}
}
public int this[int index] //索引器
{
get
{
return 0;
}
set
{
Console.WriteLine("this[{0}]={1} ",index,value);
}
}
public event EventHandler Myevent; //事件
public static Myclass operator +(Myclass a, Myclass b) //运算符
{
return new Myclass(a.Myfield + b.Myfield);
}
internal class MyNestedClass
{ }
}
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------