1.前言
经过前面几节课的学习,我们初步了解了类与对象的关系,所以在这里我就不在过多的进行赘述,如果还是不明白请阅读下面的文章进行回顾。
2.如何理解对象的封装?
所谓对象的封装只是将外部传入的值 赋值给对象的成员,当然这么说有点过于形式化,不便理解,所以我们直接上代码将对象赋值与变量赋值做一个对比即可。
我们使用下面的一段自我介绍的代码通过对变量进行赋值实现功能:
变量赋值
#region 数据存入变量
Console.WriteLine("你的姓名是什么?");
string name = Console.ReadLine();
Console.WriteLine("你的ID是什么?");
int ID = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("你的年龄是什么?");
int age = Convert.ToInt32(Console.ReadLine());
Console.WriteLine($"我的姓名是{name},我的ID是{ID},我的年龄是{age}。");
#endregion
我们可以逐步的分析一下演示代码,其中 Console.WriteLine(); 作用为 输出一段字符串到控制台中,然后我们申明了名为 name 的 string 类型变量,并且使用 Console.ReadLine(); 方法获取到我在控制台中输入的字符为变量 name 赋值。后续的几段代码也是同理,只是增加了一个 Convert.ToInt32 的方法,关于类型转换我们可以阅读下文的内容进行理解。
2023年11月17日04:31:43 Convert文章 未出 待补充
你可能会疑惑我们说的不是封装对象吗?为什么会扯到变量呢,其实疏源同归,我们可以吧对象的属性看做一个对象,并且为其赋值,所以我们的代码改一改就成这样了,不过在这之前我们需要先创造一个类,类名为 Student 内部包含的属性代码为:
/// <summary>
/// 学生类
/// </summary>
internal class Student
{
/// <summary>
/// 构造函数
/// </summary>
public Student() { }
/// <summary>
/// 学生姓名
/// </summary>
public string StudentName { get; set; }
/// <summary>
/// 学生ID
/// </summary>
public int StudentId { get; set; }
/// <summary>
/// 学生年龄
/// </summary>
public int StudentAge { get; set; }
/// <summary>
/// 自我介绍
/// </summary>
public void intro(string name, int ID, int age)
{
Console.WriteLine($"我的姓名是{name},我的ID是{ID},我的年龄是{age}。");
}
}
在完成框架的准备后,我们就需要正式的使用啦,创建完类文件后,我们就可以为我们对象的具体成员进行赋值了,因为每个对象都是独立存在的,使用为某个对象的成员赋值的过程就叫做封装。
对象赋值:
Student stu1 = new Student();
Console.WriteLine("你的姓名是什么?");
stu1.StudentName = Console.ReadLine();
Console.WriteLine("你的ID是什么?");
stu1.StudentId = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("你的年龄是什么?");
stu1.StudentAge = Convert.ToInt32(Console.ReadLine());
stu1.intro(stu1.StudentName, stu1.StudentId, stu1.StudentAge);
在第一部 我们实例化了一个对象名为 stu1的对象,后续可以看到我们将输入到控制台的数据赋值给了 对象的属性,将值赋给对象的字段、属性。变量 就是封装。
这节内容是不是很简单呢!
请登录后发表评论
注册
社交账号登录