栈(商店)
堆(仓库)
栈: 后进先出
数据只能从栈的顶端插入和删除
入栈(存入) | 出栈(删除)
栈(商店)
堆(仓库)
栈: 后进先出
数据只能从栈的顶端插入和删除
入栈(存入) | 出栈(删除)
当属性只有一个set或者get,视为只写或只读
set或者get的对象是属性函数首字母小写之后的变量
自动实现属性
var ni'm
属性
public 类型 变量成员
{
get{....}
set{...}
}
为什么我的属性不能用,属性的默认值是根据函数定义的,函数是public,属性就是public,不过也可以在属性前单独修改
构造函数不用返回值
当形参和参数名相同时可以用this方法
this....>>成员
构造函数--用来初始化数据的函数
类名和函数名相同
数据成员也称为字段、域
类是不用加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
引用类型在使用等号赋值时, 使用的是引用赋值。
每一个结构体被创建后都是直接放在栈空间里面, 其对应的属性值也是放在栈空间, 与类对象不同, 类对象的属性值放在堆空间。