Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 565115
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 13, 20262026-05-13T12:50:17+00:00 2026-05-13T12:50:17+00:00

I don’t know a thing about ABAP, apart from it has an OO side,

  • 0

I don’t know a thing about ABAP, apart from it has an OO side, and I would like to have some kind of helicopterview of it before I start to look at it in detail. I know I can find all of this when studying it , but like I said for starters I like to know what I am dealing with.

  • Is it (always) compiled?
  • Typestem : Is it strongly typed? Does it use type inference?
  • Inheritance : single / muliple, interface-like structures ?
  • Collections : Has it collections apart from arrays ? Has it generic collections? Does it use List comprehension ?
  • How about (con/contra/in)variance in arrays, returntypes, parametertypes, overriding?
  • Any Exceptionhandling?
  • Any build in design by contract support?
  • Anything remarkable as oposed to other well known languages?
  • …

Any general info about characteristics basically would be welcome!

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-13T12:50:17+00:00Added an answer on May 13, 2026 at 12:50 pm

    Is it (always) compiled?

    ABAP is “compiled” into a sort of byte-code (called “load” for historical reasons) that is then executed by a virtual machine inside the kernel. You can compare this with Java, with one big difference: The load is not machine-independent, but optimized for the target machine type. This means that in a system landscape with several different types of application servers, you might have multiple pre-compiled loads for a single program. Not that you’ll ever see any of this – the entire compilation process is handled automatically.

    Typestem : Is it strongly typed? Does it use type inference?

    Strongly typed with a system of generic types on top. Note that there’s a complete data dictionary that is integrated into the language – very handy.

    Inheritance : single / multiple, interface-like structures ?

    Single inheritance. Interfaces are supported, including composite interfaces and implementation component renaming (two interfaces IF_FOO and IF_BAR can both define a method BAZ, and a class implementing both interfaces will then have two methods IF_FOO~BAZ and IF_BAR~BAZ).

    Collections : Has it collections apart from arrays? Has it generic collections? Does it use List comprehension?

    What you know as “array” in other programming languages does not really exist in ABAP – you’ll usually use so-called “internal tables” instead. Think database-like structured in-memory tables. There are some ideas of collection classes spread out through different modules, but the canonical way to do this is to use internal tables – define a so called table type of lines that either represent references to instances or structures that contain such a reference.

    How about (con/contra/in)variance in arrays, returntypes, parametertypes, overriding?

    Arrays: see above. Overriding: You can not change the method signature when implementing interface method or overriding superclass methods. As for the parameters – that depends on whether you transfer data (or data references) or object references. In general, upcasting may happen implicitly while you have to perform the downcasting explicitly.

    Any Exceptionhandling?

    Yes. More than one way – again for the historical reasons (backward compatibility). Class-based exceptions are supported.

    Any build in design by contract support?

    None that I’m aware of.

    Anything remarkable as oposed to other well known languages?

    Lots of stuff. You might want to check http://www.volker-wegert.de/en/node/17 and http://www.volker-wegert.de/en/node/21 for an admittedly biased overview 🙂

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I don't understand where the extra bits are coming from in this article about
I don't know if anyone has seen this issue before but I'm just stumped.
For some reason, after submitting a string like this Jack’s Spindle from a text
Don't need to do this right now but thinking about the future... What would
I don't know if thats right but for some reason my stored procedure is
I don't know when to add to a dataset a tableadapter or a query
I don't currently use ajax.net though I would be open to it if it
I have just tried to save a simple *.rtf file with some websites and
I've got a string that has curly quotes in it. I'd like to replace
Don't you hate it when you have class Foobar { public: Something& getSomething(int index)

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.