zoukankan      html  css  js  c++  java
  • abap objectoriented--基本内容

    引用:翱翔云天

    abap object-oriented--基本内容

    184 views

    从今天开始abap oo之旅,主要写一些基础的,能够被轻松的理解的内容。Abaper们也要充电啊,毕竟oo是将来的大势所趋,再说多一技不压身,对自己总是有好处的。

    首先介绍abap oo中经常用到的定义。无论任何面向对象编程的语言,类都是最基本的,而对象是类的实例,这也是最基本的知识。

    对象有属性,有方法(有的书叫操作)。

    同时面向对象语言可以实现很好的封装,以及多态。

    下面我们一一介绍最基本的定义:

    1. Public attributes

    公有属性定义在public section中,其内容可以在类的外部看到,或者修改。

    一条规则:尽量减少公共属性,如果问为什么,那么可以参考面向对象语言的特性:封装,尽可能在类的内部修改属性,留给外部的只有接口,避免外部直接操作类里面的属性(或称数据)。

    2. Private attributes

    只能在类的内部访问或者修改的数据,定义在private section里面。

    3. Static attributes

    在类中,每个静态属性都是唯一的。属性的值在所有类的实例中是相同的。用class-data声明。

    4. Protected attributes

    这些保护属性,定义在protected section里面,其作用是改区域里面的属性或者方法,不能被外部调用,但是在它的子类中是可见的,也就是说,其子类可以访问protected section中的数据,这和private section是不同的。

    5. Public method, private method, static method, protected method

    这些和对应的属性同上。

    6. Constructor method

    每个类都有一个隐含的方法,在java或c++中叫构造函数,注意,abap中没有析构函数(java好像也没有)。在其他语言中,构造函数和类名相同,但是在abap中,有一个保留的名字,叫做constructor。

    当你调用create object创建对象的时候,这个函数会被执行。

    Constructor可以分为instance constructor以及static constructor。

    对于instance constructor(声明的时候使用methods),可以有import参数以及exceptions,而static constructor(声明的时候使用class-methods),没有参数传递。

    注意:static constructor一定会在以下动作之前执行

    1).创建对象,create object

    2).访问静态属性,class=>attribute

    3).调用静态方法,call method class=>method

    4).注册一个静态事件句柄,static event handler

    7. Polymorphism: 多态性

    当一个相同的方法在不同的类中有不同的实现就是多态。

    在abap中,多态可以有两种实现方法:

    1).通过继承实现

    2).通过接口实现

    8. Interface:接口

    在abap中,接口需要另外实施(其实就是在类中实施),同时有独立于类。

    在接口中只有声明部分,而没有具体的实施部分。

    1).接口必须在类的公共部分列出(public section)

    2).接口中的操作在类中实现,并且作为类的方法;所有接口中的方法必须在类的实现部分实施。

    3).在接口中定义的属性,事件,常量,类型等在声明它的类中自动可见。

    4).实施接口的方法:interface~component name

  • 相关阅读:
    xamarin 安卓输出中文错误 乱码解决
    xamarin自定义 application 无法调试
    Xamarin中 ios 修改Assets.xcassets 文件后 无法调试和编译
    xamarin 编译出现Xamarin.Build.Forms.Tasks.GetTaskAbi 无法加载的错误解决方法
    13、最新安卓Xamarin绑定相关填坑之旅
    12、xamarin form中实现H5 网页唤醒微信支付的方法
    11、使用xamarin实现全屏播放rtmp之类的直播视频
    8.在XamarinAndroid上进一步控制包的大小
    Xamarin.Forms 中iOS通过URL Scheme判断应用是否安装
    Xamarin.Android 使用PopupMenu遇到的问题
  • 原文地址:https://www.cnblogs.com/wequst/p/1513456.html
Copyright © 2011-2022 走看看