zoukankan      html  css  js  c++  java
  • 12-14面向对象--继承、多态

    一、继承

    1、类成员的访问

    使用场合

    C#2.0

    Visual Basic 2005

    说明

    Type

    (指类,接口等类型)

    public

    public

    访问不受限制

    internal

    Friend

    访问范围仅限于同一程序集

    Member

    (指类型中的成员,比如类中的字段)

    public

    public

    访问不受限制

    internal

    Friend

    访问范围仅限于同一程序集

    protected

    protected

    访问范围限于自己或派生出来的子类型

    Protected internal

    Protected Friend

    在同一程序集内访问不受限制,在不同程序集中仅由此类型派生出来的子类型可访问

    private

    private

    仅自己可以访问

    1)public、private和protected的区别:

    在子类中引用:

    2)static: 对变量的静态设置(累加求和)

    在父类中的方法:

    在子类中的方法:

    3)internal

    //在某个类中没有任何可访问性关键字在他前面,它就是internal的。

    internal class A     

         {

            internal int InternalI = 0;

        }

    它完全等同于:

     class A   //在某个类中没有任何可访问性关键字在他前面,它就是internal的。

        {

            internal int InternalI = 0;

        }

    它完全等同于:

    2、多态:当出现继承关系,就会伴随出现多态;简单的理解就是,子类不仅继承了父类的所有属性和方法,每一个子类又会有属于自己的个性的属性和方法。

    3、方法重载、隐藏与虚方法调用

    由于子类对象汇集了父类和子类的所有公共方法,有些方法父类和子类有重复的方法,所以调用时会有许多问题出现。

    子类方法与父类方法之间的关系有三种:

    1)扩充:子类方法,父类没有;

    2)重载:子类有父类的同名函数,但参数类型或数目不一样;

    3)完全相同:子类方法与父类方法从方法名称到参数类型完全一样。

    在主函数中调用:

    【练习1】方法重载:

    【练习2】方法重写:在子类同名方法前加override,表明对父类同名方法进行了重写。父类

    子类默认的是new;

    父类默认的是override:

    1)加override:(只有当子类转化成父类时起作用)执行子类的方法(子类方法覆盖了父类方法)

    2)不加override:变量名后.(点)哪个类就执行该类的方法。

     

     

  • 相关阅读:
    python中函数部分简介与定义(二)
    python中函数部分简介与定义(一)
    db2 不允许在自动存储器表空间上执行 SET TABLESPACE CONTAINERS 命令。的解决办法
    JQuery中$.ajax()方法参数详解
    jquery post 同步异步总结
    js设置height随窗口大小改变
    关于POI的系统整理
    POI 实现导出excel表
    转载>>JQuery EasyUI datagrid 合并表头处理
    iframe标签用法详解(属性、透明、自适应高度)
  • 原文地址:https://www.cnblogs.com/xiaoqingshe/p/4162734.html
Copyright © 2011-2022 走看看