关于C# 类的封装详情
作者:zls20210502 发布时间:2023-11-29 05:38:20
标签:C#,类,封装
目录
1、前言
2、实例
1、前言
法存取数据。除此之外,还可以控制数据的存取方式。在面向对象编程中,大多数都是以类作为数据封装的基本单位。类将数据和操作数据的方法结[成一个单位。设计类时,不希望直接存取类中的数据,而是希望通过方法来存取数据。这样就可以到封装数据的目的,方便以后的维护升级,也可以在操作数据时多一层判断。
此外,封装还可以解决数据存取的权限问题,可以使用封装将数据隐藏起来,形成一个封闭的问,然后可以设置哪些数据只能在这个空间中使用,哪些数据可以在空间外部使用。一个类中包含敏感数据,有些人可以访问,有些人不能访问,如果不对这些数据的访问加以限制,后果将会非常严所以在编写程序时,要对类的成员使用不同的访问修饰符,从而定义它们的访问级别。
封装的目的是增强安全性和简化编程,使用者不必了解具体的实现细节,而只是要通过外部接口这一特定的访问权限来使用类的成员。如充电器,它是将220V的电源经过降压整流滤波后,用导线与电池相连,然后进行充电。而降压整流滤波这一过程就相当于类的封装。
2、实例
【例1】 创建一个控制台应用程序,其中自定义一个MyClass
类,该类用来封装加数和被加数属性。然后自定义一个Add
方法,该方法用来返回该类中两个int
属性的和。Program
主程序类中,实例化自定义类的对象,并分别为MyClass
类中的两个属性赋值。最后调用 MyClass
类中的自定义方法 Add返回两个属性的和。
代码如下:
class MyClass //自定义类,封装加数和被加数属性
{
prvate intx=0: //定义int型变量,作为加数
private int y = 0; //定义int型变量,作为被加数
///<summary>
///加数
///<Summry>
publie int x
{
get {return x; }
set
{
x =value;
}
}
public int y //被加数
get
{
return y;
}
set
{
y * value;
}
}
public int Add() //求和
{
retum x+Y
}
class Program
{
static void Main(string(] args)
{
MyClass myclass u new MyClass(); //实例化 MyClass 的对象
myclass.x=3; //为 MyClass 类中的属性默值
myclass.Y =5; //为 MyClass 类中的属性赋值
Console.WriteLine(myclass.Add()): //调用 MyClass 类中的 Add 方法求和
Console.ReadLine();
}
}
运行结果为 8
来源:https://www.tuicool.com/articles/E36jmuu


猜你喜欢
- java读取resources文件详解及实现代码Java项目中,经常需要将资源文件打包放在项目中,然后在项目中去读取对应的文件。实现代码:S
- Unity3D的API提供了很多的功能,但是很多流程还是会自己去封装一下去。当然现在网上也有很多的框架可以去下载使用,但是肯定不会比自己写的
- iOS中有封装好的选择图片后长按出现动画删除效果,效果如下 而Android找了很久都没有找到有这样效果的第三方组件,
- 正在编译...1>Ipv4IPv6traceroutesrc.cpp1>d:\研究生\c++\study\test\test\i
- 本文实例讲述了Android判断Activity是否在最上层的方法。分享给大家供大家参考,具体如下:private boolean isTo
- 在字符集中,有一类字符具有这样的特性:当从键盘上输入这个字符时,显示器上就可以显示这个字符,即输入什么就显示什么。这类字符称为可显示字符,如
- Spring Boot读取配置文件1)通过注入ApplicationContext 或者 Environment对象来读取配置文件里的配置信
- 本文实例为大家分享了Android仿新浪微博分页管理界面的具体代码,供大家参考,具体内容如下多个activity分页管理,为了方便获取上下文
- 本文实例为大家分享了Unity实现Flappy Bird游戏的具体代码,供大家参考,具体内容如下参考:腾讯课程(零基础制作像素鸟) 环境:U
- 该篇文章篇幅很长,大概的思路如下 maven的介绍,初步
- 项目里一直用的是 spring-security ,不得不说,spring-security 真是东西太多了,学习难度太大(可能我比较菜),
- 使用环境项目环境:Idea 2020.2.3、 Maven 3.6.3 、springboot 2.1.4本人在创建springboot项目
- 前言C# 时间戳与 标准时间的转其实不难,但需要注意下,基准时间的问题。格林威治时间起点: 1970 年 1 月 1 日的 00:00:00
- Pattern类定义 public final class Pattern
- 本文实例为大家分享了Android实现选项菜单的具体代码,供大家参考,具体内容如下创建选项菜单步骤:(1)覆盖Activity的onCrea
- 本文实例讲述了C#获取远程XML文档的方法。分享给大家供大家参考,具体如下:private XDocument GetXDocument(s
- 本文演示的是Spring中使用AspectJ注解和XML配置两种方式实现AOP下面是使用AspectJ注解实现AOP的Java Projec
- 如果项目中使用到了MyBatis框架,那么使用通用Mapper和PageHelper分页插件将极大的简化我们的操作。通用Mapper可以简化
- 本文主要介绍Java中的rmi的基本使用1:项目架构api:主要是接口的定义,url地址,端口号rmiconsumer:rmi服务的调用者r
- 如果需要使用同一类型的多个对象,可以使用数组和集合(后面介绍)。C#用特殊的记号声明,初始化和使用数组。Array类在后台发挥作用,它为数组