大多数程序都是用来处理数据的,他们读,写,操作和显示数据,图形也是一种数据。

程序员为某种目的创建和使用一些类型,因此,在设计时必须理解所使用类型的特性。

有关程序及其类型的数据被称为元数据,他们保存在程序的程序集中,程序在运行时,可以查看其它程序集或本身的元数据。查看的行为叫反射,比如Type类。

特性是一种允许我们向程序集增加元数据的语言结构。他用于保存程序结构信息的某种特殊类型的类。特性的目的是告诉编译器把程序结构的某组元数据嵌入程序集。我们可以

通过把特性应用到结构来实现。

下面是Unity3d中应用特性的实例。

public class PathTool : ScriptableObject {

	[MenuItem("PathTool/Set Parent %q")]
static void SetParent()
{
Debug.Log("Perform operation");
}
[MenuItem("PathTool/Set Parent %q", true)]
static bool VallidateSelectiom()
{
if (Selection.activeGameObject == null)
return false;
else { return true; }
}
}

  

在编辑器状态下执行的脚本必须反正Editor文件下。

在非Editor文件下并把脚本放在别的对象上。

public class GameManager : MonoBehaviour {

	[ContextMenu("BuildPath")]
void BuildPath()
{
Debug.Log("Perform Operation");
}
}

最新文章

  1. Linux服务器jps报process information unavailable
  2. ajax post 请求415\ 400 错误
  3. tomcat监控
  4. JS获取网页属性包括宽、高等
  5. 共享内存shared pool (4):Library cache 转储文件
  6. 问题记录-Fragment导包不同导致无法自动转型
  7. 消息推送SignalR
  8. 一个Redis实现的分布式锁
  9. PHP数组操作——获取数组最后一个值的方法
  10. Eclipse常用快捷键速记
  11. $set()的正确使用方式
  12. 转:JMeter监控内存及CPU ——plugin插件监控被测系统资源方法
  13. PRML读书笔记_绪论
  14. winform(记事本--查找)
  15. scala语法
  16. 微信小程序编写新闻阅读列表
  17. 1、ECMAScript 6 简介
  18. 关于HTML5服务器发送事件(SSE)
  19. sql语句中GROUP BY 和 HAVING的使用 count()
  20. java执行linux shell命令,并拿到返回值

热门文章

  1. SP四种作用范围pageContext、request、session、application 一看就懂
  2. Android SDK的下载与安装
  3. 《Linux内核原理与分析》第五周作业
  4. QMD ST表 倍增
  5. python------面向对象进阶反射详解(重点)
  6. zabbix图形化界面乱码(二)
  7. 开机自启动 centos 7
  8. windows time-wait 问题处理记录
  9. TCP/IP详解--TCP连接中TIME_WAIT状态过多
  10. vscode, cmake编译多个C++文件