首页 > 代码库 > 类的继承2以及泛型等

类的继承2以及泛型等

                        今天学习的东西好碎,突然想起来啦"碎碎念",真的有点晕啦,现在感觉知识掌握了理论性的知识,还没有学会怎么使用···突然发现实践是第一位的。今天首先学习了显示调用父类的构造方法,这个就是接着昨天还有一点没讲完吧,把类的继承中的构造方法的调用讲啦讲,并且也复习啦昨天学习的我们认为都很抽象的吧。

                   <1>显示调用父类的构造方法

              

                        从上面我们可以看到定义的Chinese类继承了Person类,而在Program中我们使用了构造函数传参的方法

                      <2>  protected的适用范围

                      前几天还在纠结着protected的用法那,刚一友友告诉我啦,今天我们就学习了protected的使用范围

                            (1)public(公共的):适用于当前的项目中;

                            (2)protected(受保护的):适用于父类和子类;

                            (3)private(私有的):仅仅适用于当前类中。

                  <3>this与base的区别:

                         this:当前类; base:调用父类时间使用的关键字

                  <4>类型转换

                        

                  

                                

                     

                     类型转换中需要注意的是:1 父类指向了子类 那么变量里面只显示父类的状态;2, 把父类转换为子类,as运算符适用于引用类型的强制类型转换,像上面的类型转换一样。

                             这个是强制类型转换,适用于版本6.0;

                  <5>ArrayList 与HashTable          

                            (1) ArrayList引用System.Collection命名空间
                                 1, 手动添加(必须记住命名空间)
                                 2, 光标停在代码中,快捷键或鼠标右键(必须记住类名)。
                            (2)ArrayList学习集合可以注意归纳一下可用的方法
                                1,添加数据:Add()、AddRange()---添加数组用add;
                                2,使用Add可以添加数据,并且与数组一样可以使用“下标”(索引)访问数据;
                                3,使用下标访问的数据是object类型的,必要时需要进行转换,必须满足里氏转换原则;
                                4,为什么要把Add参数设为object的呢?
                                   答:为了通用。
                                5,AddRange将数组或集合当中的数据批量的一个一个的加进来;
                                数组或集合中有多少个数据,新集合中就添加了多少个数据,类型等一一对应;但Add同样可以将数组或集合作为数据加入,但此时加入将数组或集合作为一个项添加过去 只有找到该项,才能通过“下标”访问到其中的数据。
                                6.插入数据,Insert()使用语法:集合名.Insert(位置, 值);位置的确定,使用插入好的数据来数第二个数据就是要插入的数据内容
                             (3)HashTable的增、删、查、判存,添加数据,都是“键值对”的形式;键值对均是object类型,键值对中的键就是为了找数据用的,必须提供,不允许重复;Hashtable使用键作为寻找的方式,是一种无序的结构,得到数据,使用<hasntable实例名>[键],将返回object类型的,由键对应的数据,强转,使用里氏转换原则。
 
                                             
 

 

                  <6>foreach

                    foreach(集合中单个的类型 局部变量名 in 集合对象)

                         {
                              –// 循环体
                              –// 循环体当中“局部变量”表示集合中遍历的数据

                         }

                           循环的过程(重点)
                           总是从开始,一直循环到结束,中间不会停下来,除了break ;常规下,数组或集合此时是只读的,临时变量的类型,设断点查看,使用var判断
                                 例子就是上面已图可以看出foreach的用法。

                  <7>泛型集合

                      (1)ArrayList为什么要有ArrayList

                                    答:因为数组的长度问题,提供很多方法

                        (2)泛型集合
                                   List<T>集合 与Arrayist的区别是什么?
                                   答: 类型可以自定义 
                                  (3) Hashtable集合,为什么要有这个集合
                                   答: 想要查找,就得有一个对应关系就是通过键值来提供就需要将键与值用一种办法绑定到一起,Add(键, 值)访问键的时候,可以直接找到值 用什么方法,通过键访问到值,hashtable[键] 返回一个值,但是hashtable中都是object类型,因此使用时要考虑强传。
                                 

                           好啦,今天在云和学院学习了这些,暂时还不太会用,还需要熟悉的练习,感觉方法还是要多练习,这个仅仅是听完课啦,接下来要练习啦,努力啦就有收获!我会加油继续努力哦!友友们,我们共同努力,加油!

类的继承2以及泛型等