当前位置:  编程技术>.net/c#/asp.net

C#学习笔记之继承

    来源: 互联网  发布时间:2014-08-30

    本文导语:  1,C#分为实现继承和接口继承两种继承方式。 2,使健壮代码的编写容易一些,是开发C#的重要设计目标,因此C#不支持多重实现继承,但C# 允许类型派生于多个接口, 3,结构和类关于继承的总结  ① 结构总是派生于System.ValueT...

1,C#分为实现继承和接口继承两种继承方式。

2,使健壮代码的编写容易一些,是开发C#的重要设计目标,因此C#不支持多重实现继承,但C# 允许类型派生于多个接口,

3,结构和类关于继承的总结
 ① 结构总是派生于System.ValueType,它们还可以派生于任意多个接口
 ② 类总是派生于用户选择的另一个类,他们还可以派生于任意多个接口

4,以下的三段代码实现了相同的继承方式
如果类没有指定基类,编译器就假定Object是基类   
 

代码示例:
    class ClassA : Object 
    { 
        //代码 
    } 
     
    class ClassA : object //->object关键字,用作System.Object类的假名 
    { 
        //代码 
    } 
     
    class ClassA 
    { 
        //代码 
    } 

5,如果类也派生于接口,则用逗号分隔开基类和接口
 

代码示例:
   class ClassA : Object, IInterface1, IInterface2 
    { 
        //代码 
    } 

6,调用函数的基类版本,用base.基类方法名()的方式。
   

代码示例:
class myClass 
    { 
        private int a = 10; 
     
        public virtual int getValue() 
        { 
            return a; 
        } 
    } 
     
    class myChildClass : myClass 
    { 
        public override int getValue() 
        { 
            return base.getValue() * 10; 
        } 
     
        //这里方法并没有什么意义,只是为了说明base方式调用,不必非要在重载中使用 
        public int returnValue() 
        { 
            return base.getValue(); 
        } 
    }    class myClass 
    { 
        private int a = 10; 
     
        public virtual int getValue() 
        { 
            return a; 
        } 
    } 
     
    class myChildClass : myClass 
    { 
        public override int getValue() 
        { 
            return base.getValue() * 10; 
        } 
     
        //这里方法并没有什么意义,只是为了说明base方式调用,不必非要在重载中使用 
        public int returnValue() 
        { 
            return base.getValue(); 
        } 
}

就是这些了,由于是C#学习笔记,所以只记录一些c#继承的学习要点,希望对大家有所帮助。


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 学习linux是用PC好还是笔记本好?
  • Oracle 10G进程体系学习笔记
  • Linux 下 Oracle 命令学习笔记
  • 版本控制ClearCase,求ClearCase的学习笔记。在线等待!分不够另开贴再加。
  • jQuery学习笔记之toArray()
  • Linux+Oracle学习笔记
  • SQL学习笔记八 索引,表连接,子查询,ROW_NUMBER
  • MySQL定时器EVENT学习笔记
  • 哪位有西陆"Java初学者"论坛版主chairyuan的学习笔记,现在那里DOWN不了,拜托哪位发一份给我,谢谢:) myjava@263.net
  • Python学习笔记_数据排序方法
  • 设计模式---学习笔记2
  • 操作系统 iis7站长之家
  • jQuery学习笔记之jQuery原型属性和方法
  • JS 正则表达式的相关方法(正则学习笔记1)
  • oracle 技巧学习笔记
  • java 学习笔记(入门篇)_java程序helloWorld
  • java 学习笔记(入门篇)_java的安装与配置
  • CSS学习笔记Padding 属性中参数的定义与使用
  • shell脚本编程之case语句学习笔记
  • SQL学习笔记一SQL基础知识
  • PHP介绍及学习网站推荐
  • 想深入学习Java应该学习哪些东西
  • 准备学习docker: docker version命令查看版本
  • 新手提问:学习c++同时也想学习unix和linux
  • HTML 学习总结及下一步学习教程推荐
  • 学习c后,学习pb,大家提点建议,谢谢哦
  • OpenStack相关学习资料搜集
  • 有最近开始学习Minix的吗?一起来学习吧
  • juqery的python实现:pyquery学习使用教程
  • 我想问问哪里有AIX下啊!~版本越新越好!~我想拿来学习学习
  • 想找共同学习Linux的新手,一起学习,共同成长


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3