zoukankan      html  css  js  c++  java
  • ABAP 程序中的类 沧海

    1. 类声明及实现
          ABAP使用CLASS语句进行定义,且由声明部分和具体实现部分组成。类声明部分中包含类成员的名称及说明。类的实现部分则包括具体的类方法的实现代码,以完成具体功能。
    2. 成员可见性
          类的各个成员必须在DEFINITION部分进行声明,在此之前,需要确定该组件的可见性。成员的可见性应基于封装原则确定:对于面向对象中的类来说,其外部接口应该是易于接受而基本稳定的,所以在一个类的所有成员中,应只有一部分是可以被外部元素获得并操作的;而另外一部分内容则被封装在类的内部,没有接口功能,只供类自身使用。
           在ABAP对象中,共有三种可见性,分别是共有的、保护的和私有的,分别对应三个代码部分。
    3. 成员类型
           ABAP类中可以定义三种不同类型的成员,分别是属性、方法和事件。各成员的可见性以及生存周期在类定义时的同事被确定。

    类定义例子:
    REPORT _zclass_defination.

    *---------------------------------------------------------------------*
    *         CLASS vehicle DEFINITION
    *---------------------------------------------------------------------*
    *         ........                                                        *
    *---------------------------------------------------------------------*
    CLASS vehicle DEFINITION.      "类声明
        PUBLIC SECTION.
          CLASS-DATA class_name(10) TYPE c VALUE 'Vehicle'.    "类属性
          METHODS: accelerate,     "类方法
                   show_speed.
        PROTECTED SECTION.
          DATA speed TYPE i.
    ENDCLASS.
    *---------------------------------------------------------------------*
    *         CLASS vehicle IMPLEMENTATION
    *---------------------------------------------------------------------*
    *         ........                                                        *
    *---------------------------------------------------------------------*
    CLASS vehicle IMPLEMENTATION.     "类实现
        METHOD accelerate.
          speed = speed + 1.
        ENDMETHOD.
        METHOD show_speed.
          WRITE: /    'Speed:',speed.
        ENDMETHOD.
    ENDCLASS.
        该类通过方法修改类属性,并且实现对类属性的输出,这是一个典型的类封装的实现。



    专注于企业信息化,最近对股票数据分析较为感兴趣,可免费分享股票个股主力资金实时变化趋势分析工具,股票交流QQ群:457394862
  • 相关阅读:
    64位机配置iis 运行asp.net 程序(转载)
    病狗问题
    如何配置sqlcachedependence
    操作应用程序池
    自定义事件
    以下事情没做好决不能给客户演示
    判断用户ip是否在指定的ip段内
    silverlight4学习中解决的问题
    日历JS代码
    自己写的代码生成器ltscode2.0
  • 原文地址:https://www.cnblogs.com/omygod/p/1003802.html
Copyright © 2011-2022 走看看