Unity代码基础第二天之“C#编程”(零基础)

//命名空间 - 开头
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class study_a : MonoBehaviour// study_a派生类继承了MonoBehaviour基类的所有成员字段和函数
{
    public int Hp = 100;//公有变量-显示在inspector面板上
    private int hp = 200;//私有变量-不会显示在inspector面板上
    public Object Game;
    // Start is called before the first frame update
    void Start()
    {
        //一、4种打印方式
        print("print仅仅把信息传递给Debug.log");
        Debug.Log("以后还是用这个");
        Debug.LogWarning("输出报警");
        Debug.LogError("输出错误");

        //二、定义变量的2种方法
        //方法1
        int a = 10;  
        Debug.Log(a);
        //方法2
        int b;//int是数据类型-整形 b是变量名称 
        b = 20;//赋值
        Debug.Log(b);

        //三、数据类型有哪些?
        float num1 = 2.1f;//浮点类型
        double num2 = 2.5f;//浮点类型
        int num3 = 2;//整形 - 不能赋值浮点类型不然会报错

        bool numa = false;//布尔值
        object numb = "对象";//对象类型
        string numc = "字符串类型";//字符串类型
        char numd = 'c';//字符类型

        //四、浮点数类型的注意点
        //浮点数类型有2种float double
        //float num4 = 2.1;//是会报错的-如果我们想写一个float类型的2.1,这里的2.1,是不能这么写的
        float num4 = 2.1f;//因为float类型默认是0.0f类型-精度是6位有效bai数字
        double num5 = 2.1;//因为double类型默认是0.0d类型-精度是15位有效bai数字

        //五、在类中声明-公有变量"public"和-私有变量"private";
        //1.什么时候用public公有,什么时候用private私有?
        //一般我们想通过inspector面板上"很方便的更改某个值"可以把值设置为public公有或者"你想在别的地方去访问这个组件的值"
        //2.public Object Game;赋值一个游戏物体到inspector面板上,它可以拖拽赋值,缺点是容易丢失比如你用unity4开发5打开的时候就丢失了
        //3.定义变量的时候可以不指定private、public,但是它默认是private,不会显示在inspector面板上
        //4.字段名是不能跟关键字一样的-什么是关键字?比如:类型int string等 类class 访问修饰符,有高亮显示

        //六、算术运算符
        //1.加减乘除+-*/ 
        //2.比较运算符<><=>= == 
        //3.条件运算符(?:),有时也称为三元操作符“?:”
        int num6 = 20;
        int num7 = 30;
        int num8;
        num8 = num6>num7?200:300;//如果2大于3的话 num8=200
        Debug.Log(num8);
        //4.逻辑运算符 && || !
        //5.赋值运算符 +=  -=

        //七、C#的最常见的3种语句(后续将会写一章具体说明下,很重要)
        //1.迭代语句-遍历集合,或重复执行某一代码段直到满足指定的条件,主要有do,for,foreach,in,while
        //2.跳转语句-实现将执行的语句跳转到另一个代码段。主要有break,continue,default,goto,return,yield
        //3.选择语句-根据一个或多个指定条件,执行不同的代码段。主要有 if,if  else,switch case
        //break语句:整条语句执行结束,进行下一句语句
        //return语句:尽早return,先进行条件判断语句,判断语句如果符合要求尽早return;必须进行返回值 var

        //八、数组
        //1.数组的三种声明方式
        //1_1.第一种,直接定义数组,并赋值
        int[] Arr = { 1, 2, 3, 4, 5, 6 };//声明数组类型 直接赋值
        //Debug.Log(Arr[0]);
        //1_2.第二种,定义数组的长度,没赋值
        int[] Arr_a =new int[6];//数组长度为6,默认值为0
        //Debug.Log(Arr_a[0]);
        //也可以这样写
        int[] Arr_b;
        Arr_b = new int[8];
        //1_3.第三种,定义数组的长度,有赋值
        int[] Arr_c = new int[4] { 1, 2, 3, 4 };
        //Debug.Log(Arr_c[0]);


        //九、函数(函数称为方法,方法主要的作用是将一堆代码进行重用的一种机制,避免太多的冗余的代码,还有方便后期维护)
        //1.方法(method)的结构
        //void(返回值) 方法名(Start)(参数) { 方法体}

        //2.方法中的返回值
        int num11;
        num11 = Click_btn(20);
        Debug.Log(num11);

        //3.函数(方法)4种参数类型(后续将会写一章具体说明下,很重要)
        //3_1.值参类型(不加任何修饰符,是默认的类型)
        //3_2.引用类型(以ref 修饰符声明)
        //3_3.输出型参数 (以out 修饰符声明)
        //3_4.数组型参数 (以params 修饰符声明)

        //4.方法不能写在方法里面,要写在类里面

        //5.C#最常用的几种函数方法(后续将会写一章具体说明下,很重要)
        //5_1.数据类型转换函数-Convert.ToXXX();
        //5_2.日期相关的类与函数-获取系统当前日期(含时间):DateTime.Now
        //5_3.字符串相关的函数-字符串分割函数:Split()


        //十、脚本中的void,是指没有返回值,如果你在一个函数(方法)中使用了void就会报错

        //十一、类
        //1.类的结构
        //public类修饰符  class  scene3-类名 : MonoBehaviour(继承,不是必须有) { 类的内容}

        //2.常用的几个修饰符
        //new:仅允许在嵌套类声明时使用,表明类中隐藏了由基类中继承而来的、与基类中同名的成员。
        //public: 不限制对该类的访问。
        //protected:只能从其所在类和所在类的子类(派生类)进行访问。
        //internal:只有其所在类才能访问。
        //private:只有.NET中的应用程序或库才能访问。
        //abstract:抽象类,不允许建立类的实例。
        //sealed:密封类,不允许被继承。

        //3.类的定义public类修饰符 class Car{}
        //4.类声明的变量Car Eney;

        //5.什么是对象,什么是构造对象?
        Car Eney = new Car();//这边用类声明的变量叫-对象(Eney)。构造对象new Hello()

        //6.修改类的变量(字段的使用)
        Eney.number = 236345;
        Eney.cared = "黄色";
        Debug.Log(Eney.number);

        //7.可以利用类创建多个对象的,不同对象是可以有自己的数据(字段的使用)
        Car Eneytwo = new Car();
        Eneytwo.cared = "红色";
        Debug.Log(Eneytwo.cared);

        //8.类的方法
        //8_1.定义:跟定义方法是一样的
        //8_2.使用(调用)
        Eney.caryanse();
        Eneytwo.caryanse();
    }

    int Click_btn(int a) {
        int num10, num9;
         num10 = 10;
         num9 = a + num10;

        return num9;
     }

    // Update is called once per frame
    void Update()
    {
        
    }
}

public class Car{
    public int number;//汽车的编号
    public string cared;//汽车的颜色

    public void carnum(){
        Debug.Log("汽车的编号是:"+number);
    }
    public void caryanse(){
        Debug.Log("汽车的颜色是:" + cared);
    }
}

//void Start() { }  只执行1次
//void Update() { }  每一帧都会调用
//print(1); 打印方式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值