序列化: [SerializeField],点不出来,只能在面板上显示绑定游戏物体
   //公有隐藏
特有函数
  特有函数:不需要调用,自动执行
    Awake最先执行->OnEable
面向对象思想
   面向对象思想:分为具体对象和抽象对象,具体对象是真实存在的,抽象对象是一类真实对象的    特征的集合,分别对应着对象和类。把一个脚本绑在各个物体上的时候,每个物体都会分别执行  这个脚本
    对象~=实例
    对象:特指,具体的东西,具体存在
    类:泛指,抽象的概念,相当于下定义,共性的东西
    变量:数据
    函数:行为,动作
静态变量和动态变量
 静态变量:调用:类名点(共性),地址不变
  动态变量/实例变量:调用:实例点(特性),跟着实例走,地址随机
在单机游戏修改器中改变的就是变量,一边用数值查询的方式,用一个数据之前进行
 public static int leg;
 public string name;
 void Start()
 {
     Player player=new Player();
//静态变量可以直接用类名点出来
     Player.leg = 4;
//动态变量要用实例调用
     player.name = "sd";
 }
    组件跟代码是一个东西,是一种能力
这个按钮叫Eable

函数调用
函数调用时由内向外执行
类比高中数学f(f(xf(x)))
    int AA(int a)
    { return a; }
    int BB(int b)
    { return b; }
    int CC(int c)
    { return c; }   
//函数调用时由内向外执行
CC(BB(AA(3)));GetKey方法
有三种点击键盘的方法:
GetKey按着按键触发(要一直按着)
GetKeyDown按下键盘时触发
GetKeyUp键盘弹起来的时候触发

获取组件
 获取组件=获取能力
 小写是对象,大写是类
获取gameObject的组件,要调用GetComponent方法
调用方法:GetComponent<要调用的组件>
gameObject.GetComponent<Light>().enabled = false;
 //获取组件=获取能力
//小写是对象,大写是类
          transform.Translate(Vector3.forward * 5 * Time.deltaTime);
          //按秒算Time.deltaTime,算是一个单位
          Vector3 v = Vector3.forward * speed * Time.deltaTime;
          GetComponent<Transform>().Translate(v);
          gameObject.GetComponent<Light>().enabled = false;
          GetComponent<Light>().enabled = true;
          GetComponent<Light>().color= new Color(1,0,0)部分组件的使用
可以调节摄像机视野的大小
c#语言书写方法总结
主语(实例对象、抽象对象)+谓语(函数、类)
if()的()里放的是bool值:放函数的时候返回值是bool值,放方法的时候结果要是bool值
