当前位置: 首页 > wzjs >正文

湖南网站建设小公司排名长沙网络营销推广公司

湖南网站建设小公司排名,长沙网络营销推广公司,怎么做电力设计公司网站,浙江vs广东联盟一、封装、继承、多态关系说明 封装、继承、多态这三大特性是相互关联的,封装和继承几乎都是为多态而准备的。 封装是基础,继承是关键,多态性是补充。 多态性存在于继承性之中,它是继承性的进一步扩展,没有继承就没…

一、封装、继承、多态关系说明

封装、继承、多态这三大特性是相互关联的,封装和继承几乎都是为多态而准备的。

封装是基础,继承是关键,多态性是补充。

多态性存在于继承性之中,它是继承性的进一步扩展,没有继承就没有多态。

通过多态可以实现代码重用,减少代码量,提高代码的可扩展性和可维护性。

二、什么是封装

封装,就是将类的属性和方法封闭起来,外部成员不可直接调用,只能通过预留的接口访问。

限制对数据的直接访问,隐藏内部实现细节,仅对外提供必要的公共接口来与外部进行交互。

三、封装的好处

1、在一定程度上保证了数据的稳定性、安全性。

类内部的数据,外部无法直接访问,信任的可修改内部,不信任的不可修改内部;

防止非法操作和数据篡改,确保内部数据的安全。

2、提高代码的可维护性,降低开发难度

外部只需关注对象的公共接口,修改对象内部实现时,对其他部分的影响较小。

减少因为一处修改导致其他程序跟着被修改的情况,极大提高代码可维护性;

3、也能够简化编程,提高代码的复用

有时候我们并不想知道其原理,只需要会调用即可,外部的对象只需要访问一个简单的接口函数。

另外,把具有相似功能的方法和相关数据封装在一起形成类,在其他地方需要类似功能时,可直接使用这个类,避免重复编写代码。

4、提高程序的模块化,方便项目管理

可以将不同的功能模块划分到不同的类中,使程序结构更加清晰,便于功能管理和扩展。

四、封装体现和使用

1、类的访问修饰符

通过访问修饰符,类的属性或方法可以选择是否允许被外部访问,从而限制了外部的权限,保护了内部的数据的稳定性。

在C#中,有不同的访问修饰符:

(1)public:可以在项目外被访问,任意存取,可以被继承。

(2)pirvate:只能在本类中被访问,只可以被本类所存取,不能被继承。

(3)protected:只能在本类中被访问,可以被继承。

(4)internal:只能在同一程序集中被访问,可以跨类。可以被继承。

在C#中,新增了internal这一关键字。internal的作用域为同一程序集。

程序集的概念可以理解为一个工程、项目,编译后的dll文件或exe文件。

也就是说,internal修饰符修饰后,该类只能在单一工程内访问,如果其他项目访问是不行的。

//外部可访问的Student类
public class Student
{...
}
2、类的属性

定义字段为私有private,

然后再定义一个与该字段对应的public属性,对属性设置具有对外使用的set和get方法;

外部通过属性来获取和设置类内部的字段数据;

get和set是属性访问器,分别用于读取和写入字段的值,控制对字段的访问级别和验证数据的完整性。

    // 只能类内部使用的私有字段private string name; // 外部可访问的公开属性public string Name{get { return name; }set { name = value; }}
3、类的方法/函数

 将对象的行为封装在方法中,通过方法来控制对象的状态和行为,方法的访问级别也可由访问修饰符来定义。

public class Test(){int x =0;static void Main(string[] args)//程序执行入口{x=10;PrintFunc();}// 介于Public和private访问范围之间的,受一定保护限制的,可访问方法protected void PrintFunc(){x=x+1;Console.WriteLine("X=: {x}");}
}
4、类的构造函数

C# 构造函数是一种特殊的方法,用于在创建对象时初始化对象;

使用类的构造函数,对新创建的类对象里的数据进行赋值,初始化,可确保对象在使用前处于有效状态。

注意事项:

(1)构造函数的名称必须与它所属的类名完全相同,包括大小写。

(2)构造函数不允许有返回类型,包括void也不行。

(3)当使用new关键字创建类的对象时,构造函数会被自动调用。

一个类可以有多个构造方法(即多种初始化类的方法),根据创建类时传入的参数不同,自动使用不同的构造函数,对类对象进行不同初始化设置,以满足不同的创建对象的需求;

using System;public class Student
{protected int id= 1;// 无参构造函数public Student(){id = 100;Console.WriteLine($"学生的id值为: {id}");}// 有参构造函数public Student(string msg){Console.WriteLine($"学生的id值为: {id},传入的消息为: {msg}");}
}class TestProgram
{static void Main(){Console.WriteLine("Test:");Student student1 = new Student();//使用无参构造函数,创建id为100的Student对象Student student2 = new Student("Hello");//使用带参构造函数,创建id为1的Student对象}
}

http://www.dtcms.com/wzjs/444784.html

相关文章:

  • 做瓷砖在什么网站上找素材好百度网络优化
  • 百度可以做网站吗长春网站提升排名
  • 网站模板框架seo软件排行榜前十名
  • 想自己做网站深圳网络推广代理
  • 三农建设委员官方网站百度公司招聘岗位
  • 淄博网站建设专家在线代理浏览国外网站
  • 个人网站psd学seo推广
  • 厦门网站建设厦门seo东莞专业网站推广工具
  • 淘宝网站打算找人做网络营销站点推广的方法
  • 建立网站公司有哪些整站优化服务
  • 三端网站如何做全国推广优化网站
  • 营销型网站建设+课程深圳seo外包
  • 如何高效率的建设网站湖南专业关键词优化服务水平
  • 网站上线注意深圳全网推互联科技有限公司
  • 网站建设浅析江门百度seo公司
  • 时时彩做网站私域流量运营管理
  • 购物网站要求百度软件开放平台
  • wordpress文章 404谷歌seo实战教程
  • 做淘推广的网站seo优化外包公司
  • 淄博网站制作高端形象hs网站推广
  • 网站优化推广 视屏网站关键词优化排名外包
  • wordpress首页文章缩略图插件温州seo招聘
  • 一键上传淘宝网站开发百度网盘客服在线咨询
  • 安阳哪里做360网站中国舆情网
  • 网站建设需要的文案百度推广怎么登陆
  • 做网站开发实习生怎么样重庆seo教程搜索引擎优化
  • 大连网站平台研发刚刚刚刚刚刚刚刚刚刚刚刚刚刚刚
  • 共青团员建设网站100条经典广告语
  • 怎么做香港团购网站网络营销岗位技能
  • 江西省建设职业培训学校网站免费私人网站建设