1.适配器模式将一个类的接口转换成客户希望的另一个接口。Adapter模式使得原本由于几口不兼容的问题而不能一起工作的哪些类可以一起工作。其实说白了适配器模式就是创建一个接口,将不相容的类联系起来。这也算是一种来自于现实的方法。Adapter模式其实就是创建一个类在该类中实例化要被适配的类(我想这个类的方法和属性要和该项目的其他类是相似的),该类也是继承于抽象类或接口,属性和方法同样继承于抽象类或接口,在这些方法中完成被适配类的方法的调用。
2.关于构造函数,从字面的意思来理解,就是构造成一个类的一个部分,那么他的作用就是在类实例化的时候,同时作为类的一个组成部分实例化来,一般的作为一些属性的处理。他的函数名跟类名相同。因为构造函数的实例化的类跟该类的构造相同,同时能访问该类的属性,那么他作为一种针对属性的方法的实现,给属性的访问权应该设为Protected,即他的子类可以访问的方法。
在这里就用到了构造函数,同时相应属性的访问权限为Protedted.在一点就是this关键字的使用,他的意思就是当前的意思,即当前的某个变量是什么。这里就是当前的名字就是这个名字。
3.关于抽象方法和虚方法,这是两个很有用的方法。抽象方法的声明在抽象类里边,同时在该类的方法明前加上关键字abstract,来表示该方法为抽象方法,其实抽象方法就是表明该方法只是一个定义方法,没有具体的结构和返回值,而他的具体的实现和返回值要在他的实例化的类里边去完成。说白了抽象方法就是一个定义好的接口。
在这里就用到了抽象方法,一般抽象方法的访问权限设定为public ,至少他的子类可以访问他吧。
而虚方法定义变量和返回值,可以操作相应的类中定义好的变量虚方法是子父类之间的一种组合,虚方法的标识是virtual 而他的子类访问团要使用复写即override,这就是一个组合。再有就是关于覆写override的使用,他是子类访问抽象类和方法的一种标识,通过它就可以使用父类或接口中的方法了。
4.关于数组的使用,这点在代码行中经常使用到,他的结构就是在“”里边有一个{}:即“{}”,而大括号里边的数字就代表了相应的数组的位置,例如:
在这里就用到了数组的形式。
5.关于类的实例化的问题,这点好像很有意思,实例化的时候首先要表明要被实例化的类的类型,可以是该类本身,也可以使类的子类或接口的名称。
在这段代码中,同时使用了抽象类Player,但是他们具体实例化的类是new关键字后边的那个类,将Player改为后边具体的类也可以实现,这就是父类的通用性(自我定义的)。
6.再一点关于构造函数的,因为类在实例化的时候构造函数是必然要同时进行的,而构造函数往往有参数,所以在实例化类的时候要带上相应的参数。如上图就是这种情况,在一点具体的类在实例化的时候,构造函数首先要经过抽象类或父类的构造函数再返回到当前类才能完成构造函数的实例化,关于这一点就是Base关键字的使用,使用base关键字可以访问父类或抽象类中的方法,所以会有这样的过程。