构造函数--用来初始化数据的函数
类名和函数名相同
构造函数--用来初始化数据的函数
类名和函数名相同
数据成员也称为字段、域
类是不用加public
private 只能在函数内部使用
利用类创建对象(变量)
Customer c1(声明变量)
Customer c1=new Customer();(实例化)
赋值和结构体类似
c1.name="koBe";
调用类里的函数
变量名.函数名 例如:C1.show ( );
类
类就是创建对象的模板
类包括数据成员、函数成员
创建类
系统默认的类:class program
program 类名,一般情况下一个类对应一个文件
2.在当前项目中添加 类
面向对象编程(模块化编程)
object 对象,物品
数组 创建:
中断快捷键F9
catch ( FormaEeception e)
查找程序是否异常
enemy = new Boss(50,50,50);//但enemy.BossSkill()用不了
//enemy = new EnemyType1();
Boss c;
//不能这么设置c = new Enemy();
Enemy enemyboss = new Boss(11, 44, 55);
enemyboss.Move();//用的是boss的move方法,这是虚方法重写Move
enemyboss.AI();//用的是enemy的move方法,这是隐藏方法重写AI
栈去 堆区 静态存储区
引用类型 枚举
字符串常量存储在静态存储区 堆去存地址
这几节好懵,
ArrayList可以存储 不同类型的数据
虚函数的功能,当父类接收子类时,父类实例调用虚函数,程序会先看子类是否对虚函数重写,如果重写了,就会调用子类的函数
list.CopyTo(): 复制全部元素。第三个为索引入参, 复制第一个数组中所有元素到第二个数组, 从索引位置开始放, 要保证第二个数组的长度。
dynamic:动态类型, 动态类型可以进行+运算
而 泛型 不可以使用+运算。
列表的insert()方法可以根据索引插入数据, 指定数据位置。
列表的remove()方法可以删除指定数据。 如果存在多个相同的元素, 则只删除索引最小的数据。
removeAt()方法 可以删除指定索引的元素。
removeAll()方法删除指定值的数据,所有该值的数据都会被删除。
indexOf()方法查询指定值在列表中的位置。若存在多个元素,则返回第一个元素的索引, 若不存在 则返回-1
引用类型在使用等号赋值时, 使用的是引用赋值。
每一个结构体被创建后都是直接放在栈空间里面, 其对应的属性值也是放在栈空间, 与类对象不同, 类对象的属性值放在堆空间。
虚方法使用virtual进行申明, 子类重写父类的虚方法, 则在调用时会直接调用子类重写的方法。
面向对象: 单继承多实现
new 关键字申明的方法属于隐藏方法, 父类申明的对象调用方法 则调用父类的, 子类申明的对象则调用子类的。
override重写方法, 方法被重写后都只会调用子类的方法。
运算符重载, 对象的运算符重载类似于java重载equals函数。
mfsdmffmlfmalasmd