C#语言快速热身~~类和对象之类的封装

前言

     本篇主要介绍,类的封装、访问修饰符、this关键字、属性的使用、值传递和引用传递,如果可以帮助的你,请给小编一个小赞。

一. 访问修饰符:

访问修饰符访问权限访问级别
public不受任何限制最高
private只有类的内部可以使用最低

二. this关键字:

指的是当前对象本身,通过this可以引用当前类成员变量和方法。使用this可以解决成员变量和局部变量重名的问题。

例如:
      this.Name; 访问本类中的Name属性
      this.Show(); 访问本类中的Show方法
      this._name; 访问本类中的_name字段

三. 用属性实现字段的封装

访问器说明
get只读属性
set只写属性

使用属性解决数据安全问题,通过公有属性访问私有字段

	//字段
	private int _age;
	//属性
	public int Age
	{
		//只读
		get
		{
			return this._age;
		}
		//只写
		set
		{
			//判断年龄是否合法
			if(this._age<0 || this._age>100)
			{
				
				this._age=18;
			}
			else
			{
				this._age=value;
			}
		}
	}

属性的作用:

  1. 控制私有字段的可访问性
  2. 保护内部数据安全
  3. 类内部敏感字段使用属性来控制访问

四. 封装

特征:

  1. 封装字段——将类中的字段、属性绑到一起
  2. 将私有字段封装成公有属性
  3. 封装是面向对象的三大特征之一(封装、继承、多态)

好处:

  1. 隐藏类中的内部细节
  2. 避免非法数据
  3. 保证数据的安全性和完整性

五. 参数的传递

传递类型说明
值传递传递的的真实的值 (更改的是真实的值)
引用传递传递的是内存地址 (更改的内存地址中的值)

通过交换字符理解值传递和引用传递,下面为值传递

	//值类型传递
	static void Main(string[] args)
	{
		//输入两个数字
		Console.WriteLine("请输入两个数字:");
		int num1 = int.Parse(Console.ReadLine());
		int num2 = int.Parse(Console.ReadLine());
		Console.WriteLine($"交换前两个数分别为:{num1}和{num2}");
		
		//交换两个数的值
		Swap(num1,num2);
		Console.WriteLine($"交换后两个数分别为:{num1}和{num2}");
		Console.ReadLine();
	}
	
	//进行交换方法
	private static void Swap(int num1,int num2)
	{
		int temp = num1;
		num1 = num2;
		num2 = temp;
	}

值传递:调用方法时,不更改参数的值,参数还是原来的值。
在这里插入图片描述
引用传递

	//值类型传递
	static void Main(string[] args)
	{
		//输入两个数字
		Console.WriteLine("请输入两个数字:");
		int num1 = int.Parse(Console.ReadLine());
		int num2 = int.Parse(Console.ReadLine());
		Console.WriteLine($"交换前两个数分别为:{num1}和{num2}");
		
		//交换两个数的值
		Swap(ref num1,ref num2);
		Console.WriteLine($"交换后两个数分别为:{num1}和{num2}");
		Console.ReadLine();
	}
	
	//进行交换方法
	private static void Swap(ref int num1,ref int num2)
	{
		int temp = num1;
		num1 = num2;
		num2 = temp;
	}

调用方法时,更改参数的值。
在这里插入图片描述

1.如果使用引用传递的话必须要将参数初始化
2.如果在使用引用传递的时候在方法调用时需要加上ref

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

自学之路←_←

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值