Unity基础班学习第九天

2021-03-18 19:27发布

一、类和对象

如果是数值类型,默认汉值是0,如果是字符或者字符串,默认值为空
Car qiche = new Car();
qiche.brand = "五菱";
qiche.price = 3.5;
qiche.color = Color.White;
Console.WriteLine(qiche.color);

int a = 10, b = 20;
int sum = a + b;
int c = 30, d = 40;
sum = c + d;
int[] arr = { 1, 2, 3, 4, 5, };
int[] brr = { 1, 2, 3, 4, 5, };
foreach (var item in arr)
{
    Console.WriteLine(item);
}
foreach (var item in brr)
{
    Console.WriteLine(item);
}

方法是类里面的一个成员,故需要创建方法所在类的对象,通过对象使用点运算符调用
Tool t = new Tool();
调用方法要注意的事项:
1.如果方法有返回值,就定义一个和返回值类型一样的变量,接受返回值
2.调用方法时传进来的数据都是有具体数值和实际意义的,故调用时传进来的数据称为实参
3.实参的类型以及个数要和形参一一对应.
int sum = t.Max(3,4);
Console.WriteLine(sum);
int sum1 = t.SumInt(3, 4);
Console.WriteLine(sum1);
int[] arr = { 1, 2, 3, 4, 5, };
int[] brr = { 1, 2, 3, 4, 5, };
1.调用方法时先看方法名前面的返回值类型,如果是void,表示该方法没有返回值,就不用再定义变量接受该返回值了.如果有返回值类型,就定义一个和返回值类型一样的变量接受返回值
2.再看方法名后面的参数,实参数类型和个数要和形参一一对应,如果没有返回值,方法名后面的小括号仍然要有
t.PrintIntArray(arr);
t.PrintIntArray(brr);


二、方法的重载

static修饰的类称为静态类

静态类里面的成员必须是静态成员,静态类不能实例化(不能够用对象)

构成方法重载的条件:1.方法名相同2.形参的个数或者类型不相同,和返回值类型无关

static 修饰的成员称为静态成员,只能使用类名去调用
无static修饰的成员称为普通成员,只能使用对象去调用
在类的成员里面,静态成员只能调用静态成员,非静态成员可以调用其它任何成员,在类的里面不管公有私有都可以调用

构造方法名字和类名相同,无返回值并且不用加void
        public Student()
        {
            Name = "zhangsan";
            Age = 20;
            Console.WriteLine("student的构造方法");
        }

方法里面的成员从调用角度来看,分为静态成员和非静态成员,解决问题的时候,先用类型名调用静态成员,看是否能够解决问题.如果不能够解决问题,则创建该类的一个对象,通过对象调用非静态成员,达到解决问题的目的
静态 作用于类
非静态  作用于对象

类型名()是构造方法,方法名和类型名一样,它只有在new对象的时候被调用,主要的作用是给对象在内存中开辟空间,并且给对象里面的字段赋初始值,其它任何地方和任何时间均不能被人为调用
无参的构造方法称为默认构造,它会给对象的字段赋一个默认的初始值,如果类的里面没有任何构造方法,在创建对象使用默认构造时,系统会自动生成一个默认的构造方法


三、面向过程和面向对象

面向过程:把解决问题的步骤写出来,程序把每个步骤执行完以后,功能实现
            Console.WriteLine("把冰箱门打开");
            Console.WriteLine("把大象装进冰箱");
            Console.WriteLine("把冰箱门关上");
面向对象:分析问题中所涉及的对象,都有哪些,然后创建对象,通过调用对象的方法来解决问题
            IceBox icebox = new IceBox();
            Elephant elephant = new Elephant();
            Vegatable veg = new Vegatable();
            icebox.OpenDoor();
            icebox.PutIn(elephant);
            icebox.CloseDoor();


心得体会:

       再接再厉!!!