初始类和对象
1.类与对象
1)1.抽象:数据抽象是找出需要操作的数据,而行为抽象则是指如何对这些数据进行操作。
1)2.类:类是对事物的一种抽象定义,将抽象之后的特征和行为有机地结合起来便构成了类,
类是具有共同特征和行为的一类事物的统称。
1)3.对象:在面向对象编程中,对象是类的实例,是一种具有特征(属性)和行为(方法)的数据
结构。对象是独一无二的具体个体,用于描述现实世界的某个事物,将现实世界的事物模型化。
1)4.类与对象的关系:类是对一系列对象的抽象,提取了这一系列对象的共同特征和共同行为。
对象本身是具体的、客观存在的,而类则是一个抽象的概念,并非客观存在。
2.定义类
[访问修饰符] class 类名{
类的字段声明:
类的属性声明:
类的方法声明:
}
例如:
class Program
{
public string name; //名称
public string category;//累成
public double price;//价格
public int stpck;//数量
public string description;//描述
}
在类中定义方法
class Program
{
public string name; //名称
public string category;//累成
public double price;//价格
public int stpck;//数量
public string description;//描述
public void ShowInto( )
{
Console.WriteLine("产品信息");
Console.WriteLine("=================================");
Console.WriteLine("产品名"+name);//非静态
Console.WriteLine("类型"+category);
Console.WriteLine("数量" + stpck);
Console.WriteLine("描述" + description);
}
}
在定义方法时,需要注意以下三点:
(1)参数列表可以为空,但括号不能省略,存在多个参数时,每个参数使用逗号分隔。
(2)返回值类型可以是C#中的任何类型,如果没有返回值。则必须使用void。
(3)在方法体中,无论有多少行代码,都必须使用“{ } "括起来。
小结:
//属性描述类的特征,方法描述类的行为
//类是现实世界中具有相同属性字段方法的集合
//字段用于描述属性,方法用于描述行为
//类是事务的一种抽象定义,将抽象之后的特征和行为有机结合在一起就构成了类,类是具有共同特征和行为的一类事物的统称
//类是对对象的描述,是创建对象的‘模板’,是对对象的抽象;
//对象表示现实世界中的某个具体的事务,是类的一个实例,是类实例化的结果
3.如何添加类
4.对象的操作
4)1.实例化对象
语法:
类名 对象名= new 类名();
4)2.访问类的字段
4)3. 调用类的方法
5.命名空间
5)1.自定义命名空间
语法:
namespace name{
type-declarations(类型定义语句)
}
5)2.命名空间的使用
1.导入命名空间:使用using关键字来导入命名空间。
using Company Development; namespace T1Demo4{ class Program{ static void Main(string [] args){ //创建科技公司研发员工对象 Employee emp=new Employee();//这里访问的是 //TencentCompany.Development下的Employye } } }
2.使用完全限定名访问
namespace 命名空间案例{ class Program{ static void Main (string[] args){ //创建科技公司研发部员工对象 TencentCompany.Development.Employee emp1=new TencentCompany.Development.Employee(); //需要带上完整的命名空间 //创建科技公司人事部员工对象 TencentCompany.Personnel.Employee emp2=new TencentCompany.Personnel.Employee(); } } }
注意:
当两个相互操作的类不在同一个命名空间时,可以导入命名空间访问,也可以使用完全限定名进行访问。
使用完全限定名编码时较为繁项,推荐导入命名空间的方式访问。如果两个相互操作的类在同一个命名空间,
则直接访问即可。
小结:
*类不能进行操作,实例化的对象(创建的对象)可以
*命名空间用来管理代码,代码分类
*命名空间是逻辑上的文件夹,并且可以嵌套
*相同的文件夹下的文件可以相互调用
*不同文件夹下面可能具有相同文件