| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 898 人关注过本帖
标题:集合,多态,继承单根性
只看楼主 加入收藏
zhaichong07
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-7-1
结帖率:0
收藏
 问题点数:0 回复次数:0 
集合,多态,继承单根性
1什么是方法,方法用来干什么的。
    方法就是重用的一种机制,减少代码的重复使用
    方法的定义:
 访问修饰符    返回值类型 方法名(参数)
   
      方法体
      return
   
    访问修饰符
    面向对象是什么意思呢?
     凡事亲力亲为,每一个过程都必须非常清楚
   
     
   
    2类与对象,以及其成员有那些
    事例什么叫事例 就是实实在在的才叫事例。事例和类的区别是什么的,看看他存不存在
   
    类的定义
    访问修饰符 class 类名
   
      字段
      属性
      方法
        构造方法
        方法名必须与类名相同
        方法的返回值,没有返回值  构造方法没有返回值
        参数 默认无参如果自己添加了又参构造方法,无参的构造方法就没了
        构造方法也可以重载
   
   
         继承
    没有提供父类的构造方法 父类会执行吗???    只要你有继承的关系 就一定会从父类开始执行,执行完父类的构造方法以后在开始执行子类的构造方法,父类有个默认的无参方法       如何调用父类的构造方法? 为每一个字段进行初始化即可
       在子类构造方法中,用base的形式显示调用父类指定重载的构造方法
       语法: public 子类名(参数):base(父类参数)
      
         对子类对象成员的初始化
      
       等价格式 class base
       {
         public base()
       }
       class subClass :base
       {
        public subClass():base
       }
      
    在使用构造方法的时候 要在父类手动添加一个无参的构造方法,要是下面还有继承的话 也要手动添加一个无参的构造方法       我要想知道的问题  
     当你执行子类的时候先要从子类运行 然后在跑到父类,然后再从父类到子类
     
     继承性与结构方法
     语法
     class 类名 :父类命
     
       子类成员
     
     只能访问非私有的
     字段,属性。
     字段就是类中的变量
     属性
     提供两个方法 简化了用一个名字加大括号和get set
     public 返回类型 属性名
     
       get{}
       set{}
       这就是一个简化的东西
     
     构造方法
     创造对象的时候,调用构造方法就是new 会先默认调用父类的调用方法 当父类完成创建
     后就在调用子类
     调用那一个
     如何传参
     丢失默认构造方法
                              继承的单根性
     2任何类型的执行都会向上首先调用父类的构造方法,直到object类型
     所有类型都会直接的或简介的继偶承obhect类型
     继承的传递性
     继承的单根性任何一个类只能有一个父类,(可以实现多个借口)
     protected
     受保护的成员
     只允许在子类中和自己当中访问
     注意 object 中的membrwiseclone方法在Main方法中不能访问,因为Main是静态的
     子类不允许有执行代码的代码过程,代码的执行应该放在方法中
     
       里氏转换
       子类对象可以直接诶赋值给父类对象
       父类对象里面如果是子类对象,可以强转为子类对象
      
       类型决定了可以访问什么类型
       里氏转换的第一个特点是 统一管理对象了,但是此时 如果想要使用对象的子类的方法或者成员
       子类已经转换成父类,所以无法访问子类的成员
        如果,父类对象中存在的就是子类的对象,那么可以使用强制转换将“父类”强制转换成子类对象来使用
        例子:
        student sa=new student("xiao","lan");
        preson p=sa;
        student su2=sa;
        student stu3
        stu3=(student)p;
        
        非常混桥的:1是不是所有的的父类都能转换成子类
        
        答案:不是所有的父类都能转换成子类
                   2: Teacher类型转换成Preson后,能不能在强转成Student
                         is的用法。(就是类型判断)
             语法: 对象或者是事例is类型名
             这个表达式可以返回一个bool值,表示是否可以转化
             判断父类能否转化为子类的时候尝尝使用
            
              as的用法
              类型名 变量名 =莫个对象或实例 as 类型名
              注意  :前后的类型名相同
              伪代码:
              类型名 变量名;
              if(某个对象活实例 IS 类型名)
              
                变量名=(类型名)莫个对象或实例;
              
              else
              
                变量名=null
              
                                                         多态
                    父类方法与子类方法重名,有2中结果
                    第一 叫重写
                    第二 父类与子类有相同的方法
                    以父类身份出现的时候,那么使用父类的方法
                    以子类身份出现的时候,就是使用子类的方法
                    隐藏基类方法
                    new则隐藏,over重写
                    隐藏看类型,重写总用新
              对象在不同的类型状态下表现出来的不同特征
              将父类方法前面加上一个virtual  加上virtual 就是虚方法,替补的意思
              将子类方法名改为匪类方法名相同,并且前面加上一个override
              当你的方法名字也你父类的名字相同时候,如果你的方法中有一个override 替换重新的意思
              重写后的方法,总是使用新的
              
                                   集合
 Arraylist 是类型
 首先要引用system.collection命名空间
   1手动添加(必须记住命名空间)
   光标停在代码中,快捷键或鼠标右键 添加(必须记住类名)
   学习集合可以注意归纳一下可用的方法
    添加数据:Add()。或者是AddRange()
    使用add可以添加数据,并且与数组一样可以使用“下标”(索引)访问数据
    使用下标访问的数据是object类型的,必要时需要转换,必须满足历史转化原则()
    为什么要把Add参数设为object呢? 目的就是让他存放所有的数据 ,为了通用
    AddRenge将数组或集合当中的数据批量的一个一个的加进来
    数组和集合中有多少个数据,新集合中就添加了多少个数据,类型等一一对应
    如果是使用Add方法同样可以讲数组或集合作为数据加入,但此时加入数据族活集合作为一个添加过去  只有找到该项,才能通过“下标”(索引)才能找到
    插入数据Insert()
     使用语法:
       集合名.Insert(位子,值)  
       注意:1位子的确定,使用插入好的数据来数
             2 第二个数据就是要出啊如的数据的内容
    删除数据: Delete()或者Remove()
    判断是否包含:contains()
    sort等可以处理排序功能,甚至还有max min AVG等
    获得长度 使用count属性
集合中
Add方法返回一个int
 将数据添加到后面
 AddRenge返回void
      是成批量的  不会返回任何内容
 
   
搜索更多相关主题的帖子: return 
2012-07-01 09:29
快速回复:集合,多态,继承单根性
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.033664 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved