面向对象基础-以C#语言为例:(1)类与实例——《大话设计模式》

面向对象编程,英文叫Object-Oriented Programming,也就是针对对象来进行编程。

以下内容是对《大话设计模式》这本书的知识总揽,以及自我理解

1、类与实例

1)对象

通俗解释:一切事物皆为对象,即所有的东西都是对象,对象就是可以看到、感觉到、听到、触摸到、尝到、或闻到的东西

准确解释:对象是一个自包含的实体,用一组可识别的特性和行为来标识

//功能1:点击一个‘猫叫’的按钮,会弹出小猫的叫声‘喵’的提示框
private void button1_click(object sender,EventArgs e)
{
   MessageBox.Show("喵");
}

各部分含义如下:

  1. private访问修饰符,表示该方法是私有方法只能在当前类内部被调用,外部无法直接访问,保证了方法的封装性。
  2. void返回值类型,void表示该方法执行后不返回任何数据,因为按钮点击事件通常只需执行操作(如弹出提示框),无需返回结果。
  3. button1_click方法名遵循 “控件名_事件名” 的命名约定,清晰表明这是button1控件的Click(点击)事件的处理方法。
  4. (object sender, EventArgs e)方法参数
  • object sender:表示触发事件的 “源控件”,即哪个控件触发了这个事件。这里sender本质上就是button1(可通过类型转换(Button)sender获取该按钮的具体信息)。
  • EventArgs e事件参数,包含事件相关的附加信息。对于简单的点击事件,EventArgs本身没有太多数据;如果是更复杂的事件(如鼠标移动事件),会使用其派生类(如MouseEventArgs)传递坐标等详细信息。

简单来说,这个方法的完整含义是:一个私有、无返回值的方法,用于处理button1按钮的点击事件,方法内可以通过sender获取触发事件的按钮,通过e获取事件相关信息

//功能2:使用函数实现需要在另一个按钮中让小猫叫一声,或者让小猫多叫几声
private void button1_click(object sender,EventArgs e)
{
   MessageBox.Show(Shout());//调用函数
}
string Shout()
{
   return "喵";
}

各部分含义如下:

  1. string返回值类型,表示该方法执行后会返回一个字符串(string类型)数据
  2. Shout方法名,通常采用帕斯卡命名法(首字母大写),直观表示该方法的功能(此处可理解为 “叫”“喊叫”)。
  3. ()参数列表这里为空,表示调用该方法时不需要传入任何参数
  4. 方法体 { return "喵"; }:

return "喵"; 表示方法执行后返回字符串 "喵"。

当其他代码调用 Shout() 方法时,会得到这个字符串结果(例如可以用变量接收:string sound = Shout();,此时 sound 的值就是 "喵")。

简单来说,这是一个无参数、返回字符串 “喵” 的方法,功能是封装 “返回小猫叫声” 的逻辑,方便在程序中多次调用

2)类

使用类的原因:比如说居委会的公用电视放在你家,而别人家没有,于是街坊领居都来你家看电视,这个时候就需要使用“类”,把公用电视放在居委会

定义:就是具有相同属性和功能的对象的抽象的集合

关键字:class

⚠️1:类名词首字母要大写,如果是多个单词则各个首字母都大写

    2:对外公开的方法需要用“public”修饰符

如何使用类:将类实例化

实例,就是一个真实的对象,比如说我们都是“人”,而你和我其实就是“人”这个类的实例

实例化,就是创建对象的过程时,使用new关键字来创建

//功能3:其他窗体也需要‘猫叫Shout()’
class Cat  //Cat为类的名称
{
   public string Shout()
   //public修饰符是将此方法定义为公有方法;Shout为类的方法
   {
       return "喵";
   }
}
//功能4:实例化“类”
private void button1_click(object sender,EventArgs e)
{
   Cat cat = new Cat()
   //一般都是上面的写法,为了理解可以分写为:
   //Cat cat;
   //cat = new Cat();
   MessageBox.Show(cat.Shout());//调用函数
}

各部分含义:

  1. Cat cat 声明一个Cat对象对象名为cat
  2. cat = new Cat():将此cat对象实例化

即:Cat实例化后,等同于出生了一只小猫cat,此时就可以让小猫cat.Shout()

2、构造方法https://blog.csdn.net/LZYself/article/details/150337545?spm=1001.2014.3001.5501

3、方法重载https://blog.csdn.net/LZYself/article/details/150337545?spm=1001.2014.3001.5501

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值