类成员包括变量和方法,作为一名小白程序员,我经常把变量和方法全部声明为public。当老师看我的代码时,指出成员变量应该进行封装,???不知所云。于是,通过大量的查阅相关资料,我才明白为什么要封装?
第一点:安全。
成员变量声明为public,意味着成员变量的类只要经过实例化,都可以修改成员变量的值,容易造成数据的暴露。这显然不是我们想要的结果。
第二点:校验
在做用户的身份校验时,封装字段可以对字段本身进行校验。
第三点:字段和属性
字段是我们声明的成员变量,而属性是我们经过封装后的字段。属性可以在类实例化后直接使用。
封装的两种方式:
private string UsrName;
private string UsrPass;
//字段封装的第一种方式---自定义封装
public void SetUsrName(string value)
{
if (value == "聂风")
{
this.UsrName = value;
Debug.Log(this.UsrName);
}
else
{
Debug.Log("用户名有误");
}
}
public string GetUsrName() {
return UsrName;
}
private string name;
private string sex;
private string age;
//字段封装的第二种方式
public string Name { get => name; set => name = value; }
public string Sex { get => sex; set => sex = value; }
public string Age { get => age; set => age = value; }
public void Check() {
//第一种封装的调用
SetUsrName(inputField_UsrName.text);
SetUsrPass(inputField_UsrPass.text);
//第二种封装的调用
Person person = new Person();
person.Name = "聂风";
person.Age = "18";
person.Sex = "男";
Debug.Log(person.Name+person.Age+person.Sex);
}