原文地址:http://www.dingos.cn/index.php?topic=1013.0
【一切皆对象】
真是世界的对象是在每个人身边,能够看到或接触到或能被感受到的是我称为对象。
软件意义上的对象可以认为在面向对象的世界中,不同类型的事和物都称为对象, 也就是一切皆对象。
由于思考的角度不同,看到的对象也不同。在面向对象分析中,看到的对象也不相同。
真是世界的对象是在每个人身边,能够看到或接触到或能被感受到的是我称为对象。
软件意义上的对象可以认为在面向对象的世界中,不同类型的事和物都称为对象, 也就是一切皆对象。
由于思考的角度不同,看到的对象也不同。在面向对象分析中,看到的对象也不相同。
【类和对象】
对象表示现实世界中某个具体的事物。
抽象是从特定的实例中抽取共同的性质以形成一般化概念的过程。
对象具有两方面的含义:
★ 在现实世界中 - 是客观世界中的一个实体
★ 在计算机世界中 - 是一个可标识的存储区域
对象:是OOP应用程序的一个组成部件。这个组成部件封装了部分应用程序,这部分程序可以是一个过程、一些数据或一些更抽象的实体。C#中的对象是从类型中创建的。对象的类型在OOP中有一个特殊的名称: 类。
类:包含变量成员和函数类型。它所包含的变量成员组成了存储在对象中的数据,其中包含的函数可以访问对象的功能。
对象表示现实世界中某个具体的事物。
抽象是从特定的实例中抽取共同的性质以形成一般化概念的过程。
对象具有两方面的含义:
★ 在现实世界中 - 是客观世界中的一个实体
★ 在计算机世界中 - 是一个可标识的存储区域
对象:是OOP应用程序的一个组成部件。这个组成部件封装了部分应用程序,这部分程序可以是一个过程、一些数据或一些更抽象的实体。C#中的对象是从类型中创建的。对象的类型在OOP中有一个特殊的名称: 类。
类:包含变量成员和函数类型。它所包含的变量成员组成了存储在对象中的数据,其中包含的函数可以访问对象的功能。
【类和对象的关系】
类和对象有着本质的区别,类定义了一组概念的模型,而对象是真实的实体,他们之间的关
|
【类和类成员】
对象拥有的各种特征称为 状态,对象所有能够做的事情,称为 行为。
面向对象中的类描述了一组相似对象的共同特性,是具有相同特性和共同行为的一组对象的集合。类有属性和方法,它们是一组相似对象状态和行为的抽象。它定义了一种对象所拥有的数据和能完成的操作。
类的属性:对象所拥有的特征,在类中表示时称为类的属性。属于相同类的对象, 属性相同,但属性值不同。
类的方法:对象执行的操作成为类的方法。
C# 是一种面向对象的编程语言,与其他现代语言具有相同点。C# 将相关字段、方法、属性和事件分组到称为“类”的数据结构中。
对象拥有的各种特征称为 状态,对象所有能够做的事情,称为 行为。
面向对象中的类描述了一组相似对象的共同特性,是具有相同特性和共同行为的一组对象的集合。类有属性和方法,它们是一组相似对象状态和行为的抽象。它定义了一种对象所拥有的数据和能完成的操作。
类的属性:对象所拥有的特征,在类中表示时称为类的属性。属于相同类的对象, 属性相同,但属性值不同。
类的方法:对象执行的操作成为类的方法。
C# 是一种面向对象的编程语言,与其他现代语言具有相同点。C# 将相关字段、方法、属性和事件分组到称为“类”的数据结构中。
【定义类】
访问修饰符 class <类名>{
【示例】
class SampleClass{
public void SayHello(){
Console.WriteLine("Hello, World!");
}
}
访问修饰符 class <类名>{
// 类主体
}
类中可以包含:字段、属性、方法、构造方法、索引器等等。
}
【示例】
using System;
class SampleClass{
public void SayHello(){
Console.WriteLine("Hello, World!");
}
}
【类和对象的使用】
【示例】
可以实例化同一个类的任何数量的对象。类的每一个实例都占用单独的内存空间,并且其字段(如下所述的静态字段除外)的值也是相互分离、相互独立的。
- 将类实例化为对象 - 通过new操作符
语法:类名 对象名 = new 类名(); - 访问对象的属性或方法 - 通过“.”运算符
【示例】
class Program{
//Main is the entrypoint, where every C# program starts
static void Main(string[] args){
SampleClass sampleClass1 = new SampleClass(); // Create an object
sampleClass1.SayHello(); // Call a method
}
}
static void Main(string[] args){
SampleClass sampleClass1 = new SampleClass(); // Create an object
sampleClass1.SayHello(); // Call a method
}
}
可以实例化同一个类的任何数量的对象。类的每一个实例都占用单独的内存空间,并且其字段(如下所述的静态字段除外)的值也是相互分离、相互独立的。
【类与文件】
每个 C# 程序都至少包含一个类。设计程序时,将一个类保存在一个源代码 (.cs) 文件中是很好的编程习惯,但不是必须这么做。如果使用 C# 集成开发环境创建类,则该环境会同时自动创建一个新的源代码文件。
每个 C# 程序都至少包含一个类。设计程序时,将一个类保存在一个源代码 (.cs) 文件中是很好的编程习惯,但不是必须这么做。如果使用 C# 集成开发环境创建类,则该环境会同时自动创建一个新的源代码文件。
【类图】
在面向对象编程中,会经常使用一种表示类的构成与类和类之间的关系到他图表 - 类图。
类中的成员在图中都有不同的图标表示:
私有成员会在图标的左下方有一个“小锁”,而公有成员则没有特殊标记。
字段和属性冒号而是它们的类型,方法后面是它的返回类型。
在Visual Studio中打开一个类的类图,可以在VS中的资源管理器里右击要显示的类,在弹出的快捷菜单中选择“查看类关系图”命令便可。打开一个类图后,将其他的类拖入便可以显示拖入的类的类图,以及两个类之间的关系。
还有一种通用的类图格式,它适用于所有的面向对象语言。在类图中,字段属性放在方法前面,变量类型和返回类型也是在冒号后面,而私有成员前加一个减号“-”,公有成员则是加号“+”。
在面向对象编程中,会经常使用一种表示类的构成与类和类之间的关系到他图表 - 类图。
类中的成员在图中都有不同的图标表示:
私有成员会在图标的左下方有一个“小锁”,而公有成员则没有特殊标记。
字段和属性冒号而是它们的类型,方法后面是它的返回类型。
在Visual Studio中打开一个类的类图,可以在VS中的资源管理器里右击要显示的类,在弹出的快捷菜单中选择“查看类关系图”命令便可。打开一个类图后,将其他的类拖入便可以显示拖入的类的类图,以及两个类之间的关系。
还有一种通用的类图格式,它适用于所有的面向对象语言。在类图中,字段属性放在方法前面,变量类型和返回类型也是在冒号后面,而私有成员前加一个减号“-”,公有成员则是加号“+”。
【封装】
将成员一起组合到类中的过程不仅是逻辑上的,同时它还可以隐藏那些不希望其他代码访问的数据和函数。此原则称为“封装”。浏览 .NET Framework 类库时,只能看到这些类的公共成员。此外,每个类可能还具有该类或与之相关的类在内部使用的私有成员,但并不意味着可以供应用程序使用。创建自己的类时,您将确定哪些成员应为公共成员,哪些成员应为私有成员。
封装是面向对象的重要内容,是面向对象的三大特性之一。它用于隐藏内部实现,对外只暴露对类的基本操作,而不会让其他对象影响类的内部实现。
封装的好处:
将成员一起组合到类中的过程不仅是逻辑上的,同时它还可以隐藏那些不希望其他代码访问的数据和函数。此原则称为“封装”。浏览 .NET Framework 类库时,只能看到这些类的公共成员。此外,每个类可能还具有该类或与之相关的类在内部使用的私有成员,但并不意味着可以供应用程序使用。创建自己的类时,您将确定哪些成员应为公共成员,哪些成员应为私有成员。
封装是面向对象的重要内容,是面向对象的三大特性之一。它用于隐藏内部实现,对外只暴露对类的基本操作,而不会让其他对象影响类的内部实现。
封装的好处:
- 避免使用非法数据赋值。
- 保证数据的完整性。
- 避免类内部发生修改时,导致整个程序的修改
【面向对象的三大特性】
面向对象编程中的3个非常重要的特性:封装、继承、多态。
面向对象编程中的3个非常重要的特性:封装、继承、多态。
- 封装:保证对象自身数据的完整性、安全性。
- 继承:建立类之间的关系,实现代码复用,方便系统的扩展。
- 多态:相同的方法调用可实现不同的实现方式。