C#可视化编程基础-(类与对象)

C#可视化编程基础-(类与对象)

前言

此章的主要思想是了解程序设计的思想中的“面向对象

在程序设计中,需要处理的事物通常会非常复杂,此时也需要对处理的事物进行分析和总结,抽象出事物的特性和行为,封装成相应的类,最后实例化对象进行操作,这种程序设计的思想,我们称之为"面向对象"(Object Oriented,简称OO)

一、类与对象的基本概念

1.抽象的概念

抽象是指对具体问题进行概括,抽取公共特性并加以描述的过程。

抽象的过程是对问题进行分析和认识的过程

现实中的一切事物皆为对象

举例:

对人类,动物类和汽车类的抽象总结:
1.人类
(1)数据抽象(共同的特征):姓名、性别、年龄和身高等。
(2)行为抽象(共同的行为):吃饭、睡觉和行走等。
2.动物类
(1)数据抽象(共同的特征):名称、主食和栖息地等。
(2)行为抽象(共同的行为):发出叫声、行走和觅食等。
2.汽车类
(1)数据抽象(共同的特征):品牌型号、排量和颜色等。
(2)行为抽象(共同的行为):启动、加速和刹车等。

注:数据抽象是找出需要操作的数据,而行为抽象则是指如何对这些数据进行操作

2.类与对象

(1)类的概念

类是对事物的一种抽象定义,将抽象之后的特征和行为有机地结合起来便构成了类,类是具有共同特征和行为的一类事物的统称

在这里插入图片描述

如上图所示,在人科下有:黑猩猩、人类、直立人等多个分支对象。在猴科下有:猕猴、懒猴、狒狒等多个分支对象。那么也就可以视为,人科是一个类,而在人科类中有黑猩猩、人类、直立人等多个对象。这些对象都有共同的特征以及共同的行为,例如直立人和人类有着极为相似的外形,并且拥有族群意识和与人类极为近似的繁殖方式。故将直立人和人类划分在一个生物科中。

而人科、猴科以及其他拥有相似特征及行为的科属都包含在灵长类这个大类别中,所以可以将灵长类视为一个大类,而人科、猴科以及其他拥有相似特征及行为的科属视为对象。

(2)类的定义

在面向对象编程思想中,具有一系列共同特征和行为的通用类型被称之为类,类是现实世界中一组具有相同属性和方法的对象的集合,其中属性用于描述对象所具有的特征,方法用于描述对象的行为

(3)对象的定义

对象是指:某种可为人所感知的物质或思维、感受或动作所作用的物质或精神体。

例如咱们手中的香烟这个具体的个体可视为对象,咱们用于工作学习的电脑可视为对象,早起用于刷牙的牙刷也可视为对象,也就是说,万物皆为对象。

面向对象编程中,对象是类的实例,是具有特征(属性)和行为(方法)的数据结构。对象是独一无二的具体个体,用于描述现实世界的某个事物,将现实世界的事物模型化

(4)类与对象的关系

类是对一系列对象的抽象,提取了这一系列对象的共同特征以及共同行为,并且对象本身是具体的、客观存在的

例如:书本类是表述所有书籍的类别,它的概念是抽象的。而我手中的《刑法学讲义》则是实体书籍,它的概念是具体的,客观存在的,并且它属于书本类这个类别中,是类别中的一个对象。

二、C#中类与对象的实际应用

1.C#类的实际定义

C#是一种面向对象编程的语言,所以类是组成C#应用程序的基础。C#中的类主要由字段属性和方法组成。

C#定义类的语法如下:

[访问修饰符] class 类名{
	
	类的字段声明;
	类的属性声明;
	类的方法声明;
	
}

注:中括号"[]"中的内容表示可以省略,如果省略表示取默认值,并且定义类时需要使用"class"关键字进行标注表示此段代码定义的是一个类

举例:

	public class NewClass
    {
   
            string Name;        //姓名
            int age;            //年龄
            double wages;       //工资
		   //定义count方法,用于给员工提薪
            public static double count(double wages)
            {
   
                wages += wages * 1.2;
                return wages;
            }
    }

2.对象的使用

(1)实例化对象

在类的定义完成后,不能直接进行操作。因为类的概念是抽象的,需要实例化类来创建类的具体对象,然后对具体对象类进行操作

实例化对象语法:

类名 对象名 = new 类名();

举例:

public class NewClass
{
   
    public string Name;        //姓名
    public int age;            //年龄
    public double wages;       //工资

    public double count(double wages)
    {
   
        wages += wages * 1.2;
        return wages;
    }
}
static void Main(string[]args)
{
   
    //实例化对象NewClass,对象名为newClass
    NewClass newClass = new NewClass();<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值