[Unity&对象]怎么理解变量public 还是private ,还是使用getset方法定义
2017-06-13 16:17
513 查看
怎么理解变量public 还是private ,还是使用getset方法定义
private 变量 只能被自己的 类 调用。
public 变量 可以被其他 类调用。
get set 方法的本质是,为了让 操作代码 的设计师 、程序员明白 这个变量 的使用 条件,和应用的 环境。便于工作 ,优化代码。
在参考资料1中 第30个技巧,提到 可以 使得 不同职能之间 的工作协调,使得 其他设计师 明白自己,能够改变什么变量。
public int ID
{get;
set;}
public(private) int id;
public int ID
{
get {return id;}
set {id = value;}
}
private int id;
public int ID
{
get {return id;}//get end
set {
if(value>0)
{
id = value;
}//if end
}//set end
}//public int ID end
public int ID
{
private get {return id;}//get end
set {
if(value>0)
{
id = value;
}//if end
}//set end
}//public int ID end
参考资料:
1.
http://www.xlgps.com/article/430834.html
2.
https://zhidao.baidu.com/question/182739116.html?qbl=relate_question_2&word=unity%20get%20set%20%B7%BD%B7%A8%D3%D0%CA%B2%C3%B4%D3%C3
3.
https://zhidao.baidu.com/question/1540144388047863747.html
4.
https://zhidao.baidu.com/question/116540361.html
5.
https://zhidao.baidu.com/question/1178693760100976539
6.
https://zhidao.baidu.com/question/182739116.html?qbl=relate_question_2&word=unity%20get%20set%20%B7%BD%B7%A8%D3%D0%CA%B2%C3%B4%D3%C3
7.[Unity&接口]子类即继承接口类也继承MonoBehaviour的快速操作和重构实现
http://blog.csdn.net/bulademian/article/details/72884513
8.
9.
private 变量 只能被自己的 类 调用。
public 变量 可以被其他 类调用。
get set 方法的本质是,为了让 操作代码 的设计师 、程序员明白 这个变量 的使用 条件,和应用的 环境。便于工作 ,优化代码。
在参考资料1中 第30个技巧,提到 可以 使得 不同职能之间 的工作协调,使得 其他设计师 明白自己,能够改变什么变量。
get set 方法的几种使用方法
第1种用法,这种用法仅仅 是改变 了ID 的设置的类型
通常使用在 参考资料7 ,这种快速重构 继承 多接口 的时候。public int ID
{get;
set;}
第2种用法,这种方法 为了使得 id 被封装(当且仅当id 为private 类型的时候),并且 其他函数可以通过 调用 ID,来改变id。
参考资料3 里面提到 封装性。public(private) int id;
public int ID
{
get {return id;}
set {id = value;}
}
第3种用法,对 id 进行 条件限制,比如 用这种方法 设置分数, 0<分数<100,避免变量 超出范围,无效。
参考资料5,6 都显示,使用get;set 方法 ,可以对变量 设置IF 语句 进行 条件 的判断。private int id;
public int ID
{
get {return id;}//get end
set {
if(value>0)
{
id = value;
}//if end
}//set end
}//public int ID end
第4种用法,这种用法 使得 id 这个变量 可以在其他 函数中被设置,get;set方法默认 是public ,可以设置为private ,一旦设置为private ,就只能在这个类中 得到该变量。
private int id;public int ID
{
private get {return id;}//get end
set {
if(value>0)
{
id = value;
}//if end
}//set end
}//public int ID end
参考资料:
1.
unity使用Unity3D的50个技巧:Unity3D最佳实践
http://www.xlgps.com/article/430834.html2.
c#中get,set属性的作用是什么?
https://zhidao.baidu.com/question/182739116.html?qbl=relate_question_2&word=unity%20get%20set%20%B7%BD%B7%A8%D3%D0%CA%B2%C3%B4%D3%C33.
java中什么是类的封装性
https://zhidao.baidu.com/question/1540144388047863747.html4.
C#中的属性定义为public和定义为private再使用get()set()方法有区别吗
https://zhidao.baidu.com/question/116540361.html5.
c#属性写法有几种形式,哪种更规范, 如果有别的写法请补充
https://zhidao.baidu.com/question/11786937601009765396.
c#中get,set属性的作用是什么?
https://zhidao.baidu.com/question/182739116.html?qbl=relate_question_2&word=unity%20get%20set%20%B7%BD%B7%A8%D3%D0%CA%B2%C3%B4%D3%C37.[Unity&接口]子类即继承接口类也继承MonoBehaviour的快速操作和重构实现
http://blog.csdn.net/bulademian/article/details/72884513
8.
9.
相关文章推荐
- JAVA学习.JAVA对象构建内存理解&静态方法和变量的理解和使用.
- 用类名做方法的返回值类型 在学习Java的初始阶段,很多同学使用基本数据类型定义变量和引用类型定义变量以及使用类名做方法的返回值类型常常不知所以。今天我以自己的解读方式和个人的理解作一个简单的解释,和
- 使用全局变量的四种方式:extern、AppDelegate、定义单例对象、NSUserDefaults 和单例工厂的使用方法
- [Unity&对象]怎么使用全局静态变量
- 【Unity&人物属性】人物属性大量设置用set,get方法还是public成员
- 使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?(个人理解)
- 子类继承父类时,子类与父类有同名变量,当使用子类对象调用父类方法使用同名变量,这个变量是子类的,还是父类的?(转)
- C++获取类中的变量的方法(变量公有化【public变量】&&使用set和get函数)
- 【Unity&对象数组】如何创建一个长度不确定的对象数组以及使用方法&墙壁单元方块对象数组
- Oracle游标使用方法(&游标里使用变量绑定)
- 全局变量声明,定义与使用方法
- Highcharts控件使用说明及注意事项, 错误: 'Highcharts' 未定义 错误: 'jb' 为空或不是对象
- JS的正则表达式对象使用方法 如何定义
- PHP __get()和__set()的使用方法(存取或者调用未定义的属性变量)
- 使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?
- 使用final 关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?
- Win32汇编语言学习笔记>>第三课:变量的定义与使用
- 定义一个全局变量设初值为20,在page_load里面给其赋值为50,在别的按钮事件里面引用还是为20,怎么回事?
- error #2153: expression must have class type(低级错误:看是指针还是对象->和.的使用要正确)
- 变量对象Variable Object 使用方法