前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C#的封装_封装元器件

C#的封装_封装元器件

作者头像
全栈程序员站长
发布2022-09-30 09:59:24
6180
发布2022-09-30 09:59:24
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

封装:即隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别;将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“类”,其中数据和函数都是类的成员。

封装的作用:封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性,使不同类之间的相互影响减少到最低限度,进而增强数据的安全性和简化程序的编写工作

封装的优点:1. 良好的封装能够减少耦合。 2. 类内部的结构可以自由修改。 3. 可以对成员变量进行更精确的控制。 4. 隐藏信息,实现细节。

举例:

对年龄属性的封装

代码语言:javascript
复制
 private int age;//private:私有的,仅供内部进行访问
 public int Age//public:公有的,任何地方都可以访问
        { 
   
            //获取或读取字段值
            get { 
    return age; }//属性的读取
            set { 
    age = value; }//属性赋值(value为关键字)
        }

对这个方法进行一些操作时的代码:

代码语言:javascript
复制
first.Age = 21;
Console.WriteLine("年龄为:{0}",first.Age);

运行结果:

在这里插入图片描述
在这里插入图片描述

当然在封装时,会有”有返回值”和”无返回值”两种,一般的如果要对封装的函数得出的结果还要继续使用的话,比如赋值、数组的遍历等等,就写返回值,否则就不需要
对于没有返回值的方法进行举例:(实现一个计算功能)
代码语言:javascript
复制
 public void List (double num1,double num2,string fuhao) 
{ 

double count;
switch (fuhao)
{ 

case "+":
count =num1 + num2;
Console.WriteLine("您要计算的值为:{0}" , count);
break;
case "-":
count = num1 - num2;
Console.WriteLine("您要计算的值为:{0}" , count);
break;
case "×":
count = num1 * num2;
Console.WriteLine("您要计算的值为:{0}" , count);
break;
case "÷":
count = num1 / num2;
Console.WriteLine("您要计算的值为:{0}" , count);
break;
}
}

在调用时候的代码:

代码语言:javascript
复制
//分别实现四个功能
first.List(20,10,"×");
first.List(20, 10, "+");
first.List(20, 10, "-");
first.List(20, 10, "÷");

运行结果:

对于有返回值的:(数组的求和)
代码语言:javascript
复制
public int Then(int[]list)
{ 

int k = 0;
for (int i = 0; i < list.Length; i++)
{ 

k += list[i];
}
return k;
}

在调用时的操作代码:

代码语言:javascript
复制
            int[] arry = { 
1,2,3,5,4,6,9,8,7 };
int arry1= first.Then(arry);
Console.WriteLine(arry1);

运行结果:


在参数传递的时候会用到形参和实参,我们来举例介绍说明一下:
形参:就是形式参数,在进行方法封装时,我们只定义了这个参数的类型,并没有具体的值:

例如以下代码中,num1和num2和fuhao就是形参:

代码语言:javascript
复制
 public void List (double num1,double num2,string fuhao) { 
}
实参:在定义了形参后对其赋值:

例如以下代码中20、10和×分别对应以上的num1和num2和fuhao,也就是这三个的赋值,我们称赋值的这三个数为实参:

代码语言:javascript
复制
 first.List(20,10,"×");

在封装时会用到GET和SET方法,那么我们具体介绍一下其作用:

GET是取值的方法:当我们进行封装时首先得读取到要对哪一个值进行封装,然后才能进行; SET是设置值的方法:当取到值后,接下来就应该对其值进行具体的设置。 例如在wpf程序设计中一般会用到:

代码语言:javascript
复制
分别是设置btn的宽高和获取btn的宽高
Canvas.SetTop(btn, 10);
Canvas.SetLeft(btn, 1400);
Canvas.GetLeft(btn);
Canvas.GetTop(btn);
一般的来说当我们需要进行数据间的传递的时候,可以对其方法或属性进行封装,然后在进行调用

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月9日 下,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 封装:即隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别;将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“类”,其中数据和函数都是类的成员。
  • 封装的作用:封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性,使不同类之间的相互影响减少到最低限度,进而增强数据的安全性和简化程序的编写工作
  • 封装的优点:1. 良好的封装能够减少耦合。 2. 类内部的结构可以自由修改。 3. 可以对成员变量进行更精确的控制。 4. 隐藏信息,实现细节。
  • 举例:
  • 当然在封装时,会有”有返回值”和”无返回值”两种,一般的如果要对封装的函数得出的结果还要继续使用的话,比如赋值、数组的遍历等等,就写返回值,否则就不需要
    • 对于没有返回值的方法进行举例:(实现一个计算功能)
      • 对于有返回值的:(数组的求和)
        • 在参数传递的时候会用到形参和实参,我们来举例介绍说明一下:
          • 形参:就是形式参数,在进行方法封装时,我们只定义了这个参数的类型,并没有具体的值:
          • 实参:在定义了形参后对其赋值:
          • 在封装时会用到GET和SET方法,那么我们具体介绍一下其作用:
          • 一般的来说当我们需要进行数据间的传递的时候,可以对其方法或属性进行封装,然后在进行调用
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档