What's "!" in method declaration in class?

See the excerption below, what's the meaning of "!"?
protected section.
  methods CALC
    importing
      !IV_PROC_TYPE type STRING optional
      !IV_PROC_NAME type STRING optional
      !IV_PROC_CLASS type STRING optional .
Thanks in advance

hi,
the exclamation mark is nothing more than a hint to the ABAP compiler. It is required when you want use keywords like export, exceptions and so on as formal / actual argument.
In the given scenario it is no must. But maybe the code is produced by some generator. For a generator not smart enough to no all rules, it is good advice to use exclamation marks for any parameter.
Regards,
anver
<i>
if hlped pls mark points</i>

Similar Messages

  • What is Processing Method and Processing Class in Action Profile

    Dear all,
    I have defined an action for case management, to trigger an email after saving the case in Enterprise portal.
    Action is getting initiated in case document after saving, but after a while it is showing message 'Incorrect'.
    In the actions monitor report, error message showing that some problem in Processing Method.
    In my action I have maintained settings as below.
    Form name - SCMG_SMART_FORM_CASE
    Processing class - CL_SCMG_CASE_CONTEXT_PPF
    But I don't know what processing method should I give
    I could not find and values under F4 functionality.
    Please do advice me what method I can use here.
    and why we use processing method and processing class.
    your help will be highly appreciated.
    Thank you
    Raghu ram

    Hi
    DSD means Daily Salary Deduction for more check this table to understand abd DSD and the respective Processing class 77 V_T7INO1

  • What is isWeak method of DESKeySpec class doing?

    [Question.1]
    According to JavaDoc, isWeak method of DESKeySpec is checking if the given DES key material is weak or semi-weak.
    What is the method checking concretely?
    What do weak and semi-weak mean?
    [Question.2]
    I want to do the same check for AES key, but there isn't AESKeySpec class like DESKeySpec.
    Are there any ways to implement the check without isWeak method?

    Due to the way the DES algorithm works, it is possible for certain keys to give sub keys that reduce the cryptographic strength of the cipher. Some more details are at: http://en.wikipedia.org/wiki/Weak_key#Weak_keys_in_DES.
    AES does not have this test as the algorithm is considered to not have weak keys.
    Shane

  • Method declaration in Class

    Hi Experts,
             In Classes and Methods i got one requirement like this , Please respond it.
    I have to create the method , where class is already defined(ZCL_CONFIGURABLE_ITEM )
    Create Method:  IS_SEQUENCE_NOT_TO_PRINT .
    Class name :ZCL_CONFIGURABLE_ITEM
    They had given me example logic also. But iam not able to do this because i have no idea on classes and methods.
    Please see this example and respond me .
    Create Method:  IS_SEQUENCE_NOT_TO_PRINT .  This must be a value method in class ZCL_CONFIGURABLE_ITEM , passing document number VBDKR-VBELN that returns a parameter value: X = True, Blank = false.
    GET BILLTO_PARTNER customer number for the document (reading VBPA where VBELN = document number VBDKR-VBELN and partner PARVW = ‘RE’ / ‘BP’)Read table KNA1 to get field KNA1-KATR6 where KUNNR equals Billto partner, and fields VBDKR-VKORG, VBDKR-VTWEG, VBDKR-SPART, Store first character of field KNA1-KATR6 in a work field e.g. W_ KATR6.
    Add the entry below to the ZLITERAL table in all clients
    Read the records from ZLITERAL table (reading key1 = C_ZLIT_GENOSYS_KEY, and key2 = C_KATR6_1) where C_KATR6_1 = attribute on class, with value = KATR6_1 .  You must add this attribute on the class.  Populate the internal table L_ZLITERAL_TAB type ZLITERAL_TAB_TYPE.

    Hi,
        You can create the method from the CLASS BUILDER. SE24. There navigate to methods tab and enter you method name. Then select visibility public or private.
    Then click on the parameters button to add parameters to the method. Selec IMPORT, EXPORT or RETURNING parameter for the function.
    Regards,
    Sesh

  • What is the method name?

    Hello:
    I understood that i have to override the paintComponent method.
    But my question is that, what is the method declaration by which shall i set the background image? where image name is winter.jpg
    I will be highly grateful to u if u kindly give me the proper answer.

    The answer was already given to you in your other post.
    icewalker2g gave you this site http://www.jguru.com/faq/view.jsp?EID=9691
    The code:
    import javax.swing.*;
    import java.awt.*;
    public class BackgroundSample {
      public static void main(String args[]) {
        JFrame frame = new JFrame("Background Example");
        final ImageIcon imageIcon = new ImageIcon("draft.gif"); // <--- change this image to your image
        JTextArea textArea = new JTextArea() {
          Image image = imageIcon.getImage();
          Image grayImage = GrayFilter.createDisabledImage(image);
          {setOpaque(false);}  // instance initializer
          public void paintComponent (Graphics g) {
            g.drawImage(grayImage, 0, 0, this);
            super.paintComponent(g);
        JScrollPane scrollPane = new JScrollPane(textArea);
        Container content = frame.getContentPane();
        content.add(scrollPane, BorderLayout.CENTER);
        frame.setDefaultCloseOperation(3);
        frame.setSize(250, 250);
        frame.setVisible(true);
    }In the future please read your post and don't multipost and crosspost.

  • Final method and final class

    What is final method and final class in abap objects.

    ejp wrote:
    Since that doesn't work--or would overyy complex to implement... would be impossible to implement. Once the method-local copy goes out of existence, ipso facto it can never be changed. This is the whole point.I consider it impossible too, but I'm not a language/compiler/runtime expert, so I allowed for the possibility that there could be some way to do it--e.g. local variables that are references in inner classes live on the heap instead of the stack, or something. My point isn't that it's possible, just that if it were somehow to be done, it would by ugly, so we may as well consider it impossible--it just ain't gonna happen.
    we go with the logic, "Okay, we need to copies, but keeping them in sync is a nightmareNo, it is +meaningless.+No, it's not meaningless. If we have the two copies, and they're not final, then after the inner object is created, the method can continue running, and either the method or the inner object could modify its copy. As far as our code knows, it's the same variable, so there'd have to be some way to keep them in sync. That's either impossible or undesirably complex--like the above, it doesn't matter which--so it's final in order to get past the issue of keeping the copies in sync.

  • Declaration method in users Class

    What's different between declaration method in these codes
    class Programm
    ClassA class1 = new ClassA();
    class1.TestMethod();
    public ClassA
    public void TestMethod()
    and
    class Programm
    ClassA.TestMethod();
    public ClassA
    internal static void TestMethod()

    There are 2 main differences.
    Your access modifier is different (public / internal). See this link for information about the 4 different access modifier. https://msdn.microsoft.com/en-us/library/ms173121.aspx
    Your first method has instance scope and the second one has a static/global scope. See this link on what the difference is between the 2. https://msdn.microsoft.com/en-us/library/aa645629(v=vs.71).aspx
    -Igor

  • Help with Declaring a Class with a Method and Instantiating an Object

    hello all i am having trouble understanding and completing a lab tutorial again!
    im supposed to compile an run this code then save work to understand how to declare aclass with a method an instantiate an object of the class with the following code
    // Program 1: GradeBook.java
    // Class declaration with one method.
    public class GradeBook
    // display a welcome message to the GradeBook user
    public void displayMessage()
    System.out.println( "Welcome to the Grade Book!" );
    } // end method displayMessage
    } // end class GradeBook
    // Program 2: GradeBookTest4.java
    // Create a GradeBook object and call its displayMessage method.
    public class GradeBookTest
    // main method begins program execution
    public static void main( String args[] )
    // create a GradeBook object and assign it to myGradeBook
    GradeBook myGradeBook = new GradeBook();
    // call myGradeBook's displayMessage method
    myGradeBook.displayMessage();
    } // end main
    } // end class GradeBookTest4
    i saved above code as shown to working directory filename GradeBookTest4.java
    C:\Program Files\Java\jdk1.6.0_11\bin but recieved error message
    C:\Program Files\Java\jdk1.6.0_11\bin>javac GradeBook4a.java GradeBookTest4.java
    GradeBookTest4.java:2: class, interface, or enum expected
    ^
    GradeBookTest4.java:27: reached end of file while parsing
    ^
    2 errors
    can someone tell me where the errors are because for class or interface expected message i found a solution which says 'class? or 'interface' expected is because there is a missing { somewhere much earlier in the code. i dont know what "java:51: reached end of file while parsing " means or what to do to fix ,any ideas a re appreciated                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

    Doesn't solve your problem, but this works for me...
    public class GradeBook
      public void displayMessage() {
        System.out.println( "Welcome to the Grade Book!" );
      public static void main( String args[] ) {
        try {
          GradeBook gradeBook = new GradeBook();
          gradeBook.displayMessage();
        } catch (Exception e) {
          e.printStackTrace();
    }

  • What types of sort performed by sort method of Array class ?

    I use normal bubble sort and method Array.sort() to sort some given data of an Array and then count the time.But Array.sort() method takes more time then normal bubble sort.
    Can anybody tell me what types of sort performed by sort method of Array class?

    I'm pretty sure that in eariler versions (1.2, 1.3
    maybe?) List.sort's docs said it used quicksort. Or I
    might be on crack.You are actually both correct, and wrong :)
    From the documentation of the sort methods hasn't changed in 1.2 -> 1.4 (as far as I can notice), and the documentation for sort(Object[]) says (taken from JDK 1.2 docs):
    "This sort is guaranteed to be stable: equal elements will not be reordered as a result of the sort.
    The sorting algorithm is a modified mergesort (in which the merge is omitted if the highest element in the low sublist is less than the lowest element in the high sublist). This algorithm offers guaranteed n*log(n) performance, and can approach linear performance on nearly sorted lists."
    So, how could you be correct? The documentation for e.g. sort(int[]) (and all other primities) says:
    "Sorts the specified array of ints into ascending numerical order. The sorting algorithm is a tuned quicksort, adapted from Jon L. Bentley and M. Douglas McIlroy's "Engineering a Sort Function", Software-Practice and Experience, Vol. 23(11) P. 1249-1265 (November 1993). This algorithm offers n*log(n) performance on many data sets that cause other quicksorts to degrade to quadratic performance."
    Your memory serves you well :)
    /Kaj

  • What is the advantage of abstract class and method???

    hi,
    * Why a class is declared as abstract???
    * What is the use of declaring a class as abstract???
    * At what situation abstract class will be used???Thanks
    JavaImran

    To save you from the wrath of the Java experts on this forum, allow me as a relatively new Java user to advise you: do NOT post homework problems here; you're just going to get told to go google the answer. Which would be a good move on your part. Especially since I found the answer to your questions by googling them myself.

  • What is the purpose of Static methods inside a class?

    Hi,
    What is the purpose of Static methods inside a class?
    I want the answers apart from "A static method does not require instance of class(to access) and it can directly be accessed by the class name itself"
    My question is what is the exact purpose of a static method ?
    Unlike attributes, a separate copy of instance attributes will be created for each instance of a class where as only one copy of static attributes will be created for all instances.
    Will a separate copy of instance method be created for each instance of a class and only one copy of static methods be create?
    Points will be rewarded for all helpful answers.

    Hi Sharma,
    Static methods is used to access statics attributes of a class. We use static attributes when we want to share the same attribute with all instances of a class, in this case if you chage this attribute through the instance A this change will change will be reflected in instance B, C........etc.
    I think that your question is correct -> a separate copy of instance method will be created for each instance of a class and only one copy of static methods be create ?
    "A static method does not require instance of class(to access) and it can directly be accessed by the class name itself"
    Static Method: call method class=>method.
    Instance Method: call method instance->method.
    Take a look at this wiki pages.
    [https://wiki.sdn.sap.com/wiki/x/o5k]
    [https://wiki.sdn.sap.com/wiki/x/ZtM]
    Best regards.
    Marcelo Ramos

  • What are the uses of declaring a class "final"?

    Can any one please tell me the uses of declaring a class "final"?
    I know that final classes cannot be extended. Other than this,
    Is there any thing that will improve the compiler time for the final classes?

    compiler performance is utterly unimportant anyway...
    If the compiler takes too long, just get a faster build system :)

  • Calling method from another class

    Got the below code for the Bank class with a log in system, Want i need is a While loop for
    "While ValidUser = True, Do method in Accounts class."
    package bank;
    import javax.swing.*;
    import java.lang.*;
    public class Bank {
                  /*User Arrays */
        public  String Customer[]= new String[4];
        public  String Pin[] = new String[4];
                 /* User Tryed details */
            String User;
          String PinAuth;
    Boolean ValidUser;
    public Bank ()
                  /*Customers */
              Customer[0]="John";
        Customer[1]="Alan";
        Customer[2]="Lisa";
        Customer[3]="Liam";
        Pin[0]="1234";
        Pin[1]="1982";
        Pin[2]="4321";
        Pin[3]="5678";
    public Bank(String CustAtt, String PinAtt)
         User = CustAtt;
         PinAuth = PinAtt;
    public String getUser()
        return User;
    public String getPin()
        return PinAuth;
    public void setUser(String CustAtt)
        User = CustAtt;
    public void setPin(String PinAtt)
        PinAuth = PinAtt;
      public static void main    (String args[] ){
    System.out.println("Welcome to The Bank of Scotland");
          String User;
          String PinAtt;
        boolean ValidUser;
          /* Get User Details */
         User =
                JOptionPane.showInputDialog("Please Enter Your Name");
        /* Get User pin */
         PinAtt =
                JOptionPane.showInputDialog("Enter your Pin");
    /* Print USer Details */
         System.out.println(User);
         System.out.println(PinAtt);
    /* Authorise Customer */
    Bank newBank = new Bank();
    for(int i=0; i<4;i++)
    if(User.equals(newBank.Customer) && PinAtt.equals(newBank.Pin[i]))
    ValidUser=true;
    else
    ValidUser=false;
    if(ValidUser=true)
    System.out.println("Auth");
    else if(ValidUser=false)
    System.out.println("Log in details are in correct");
    while(ValidUser=true)
    Account Class, in this class i need options for selecting withdraw deposit  and close account, not sure if i could do this in the Current account class though.
    Any advice will be great package bank;
    import javax.swing.*;
    import java.lang.*;
    public class Account {
    private String AccountNo;
    private int Balance;
    private int Deposit;
    String AccountUsed;
    public Account () {
    public String getAccountNo ()
    return AccountNo;
    public void setAccountNo (int val) {
    AccountUsed = AccountNo;
    public int getBalance () {
    return Balance;
    public void setBalance (int val) {
    this.Balance = val;
    public int getDeposit ()
    return Deposit;
    public void setDeposit (int val)
    this.Deposit = val;
    this.Balance=this.Balance+this.Deposit;
    public void setWithdrawl (int val)
    this.Balance=this.Balance-val;
    public static void account (String args[] ){
    String Deposit = new String();
    String Withdraw = new String() ;
    System.out.println("Deposit - Withdraw");
    Account newAccount = new Account();
    Deposit =
    JOptionPane.showInputDialog("Enter the ammount you wish to deposit");
    Withdraw =
    JOptionPane.showInputDialog("Enter the amount you wish to Withdraw");
    System.out.println(Deposit);
    System.out.println(Withdraw);
    Account custAccount =new Account();
    custAccount.setDeposit(Integer.parseInt(Deposit));
    custAccount.setWithdrawl(Integer.parseInt(Withdraw));
    System.out.println(custAccount.getBalance());

    Maxideon wrote:
    All of these are valid,
    while(validUser == true) {
    while(validUser) {
    //I prefer this one
    if(validUser == true) {
    if(validUser) {
    //I prefer this one
    } What you have,
    if(validUser = true) {
    if(validUser = false) {
    }is different. I have two equal signs, while you have one. What do you think one equal sign does?
    P.S. All your variable names are screwed up. They should begin with a lower case letter.
    Edit
    Some other anomalies: you declared ValidUser as a Boolean and you imported java.lang. .... Why?
    Edit
    Another weird thing.
    String Deposit = new String();
    String Withdraw = new String();?I Am fairly new to java, I have things "working" to an extent, and i am aware of the naming conventions over the variable names,

  • Calling a non-static method from another Class

    Hello forum experts:
    Please excuse me for my poor Java vocabulary. I am a newbie and requesting for help. So please bear with me! I am listing below the program flow to enable the experts understand the problem and guide me towards a solution.
    1. ClassA instantiates ClassB to create an object instance, say ObjB1 that
        populates a JTable.
    2. User selects a row in the table and then clicks a button on the icon toolbar
        which is part of UIMenu class.
    3. This user action is to invoke a method UpdateDatabase() of object ObjB1. Now I want to call this method from UIMenu class.
    (a). I could create a new instance ObjB2 of ClassB and call UpdateDatabase(),
                                      == OR ==
    (b). I could declare UpdateDatabase() as static and call this method without
         creating a new instance of ClassB.With option (a), I will be looking at two different object instances.The UpdateDatabase() method manipulates
    object specific data.
    With option (b), if I declare the method as static, the variables used in the method would also have to be static.
    The variables, in which case, would not be object specific.
    Is there a way or technique in Java that will allow me to reference the UpdateDatabase() method of the existing
    object ObjB1 without requiring me to use static variables? In other words, call non-static methods in a static
    way?
    Any ideas or thoughts will be of tremendous help. Thanks in advance.

    Hello Forum:
    Danny_From_Tower, Encephalatic: Thank you both for your responses.
    Here is what I have done so far. I have a button called "btnAccept" created in the class MyMenu.
    and declared as public.
    public class MyMenu {
        public JButton btnAccept;
         //Constructor
         public MyMenu()     {
              btnAccept = new JButton("Accept");
    }     I instantiate an object for MyMenu class in the main application class MyApp.
    public class MyApp {
         private     MyMenu menu;
         //Constructor     
         public MyApp(){
              menu = new MyMenu();     
         public void openOrder(){
               MyGUI MyIntFrame = new MyGUI(menu.btnAccept);          
    }I pass this button all the way down to the class detail02. Now I want to set up a listener for this
    button in the class detail02. I am not able to do this.
    public class MyGUI {
         private JButton acceptButton;
         private detail02 dtl1 = new detail02(acceptButton);
         //Constructor
         public AppGUI(JButton iButton){
         acceptButton = iButton;
    public class detail02{
        private JButton acceptButton;
        //Constructor
        public detail02(JButton iButton){
          acceptButton = iButton;
          acceptButton.addActionListener(new acceptListener());               
       //method
        private void acceptListener_actionPerformed(ActionEvent e){
           System.out.println("Menu item [" + e.getActionCommand(  ) + "] was pressed.");
        class acceptListener implements ActionListener {       
            public void actionPerformed(ActionEvent e) {
                   acceptListener_actionPerformed(e);
    }  I am not able to get the button Listener to work. I get NullPointerException at this line
              acceptButton.addActionListener(new acceptListener());in the class detail02.
    Is this the right way? Or is there a better way of accomplishing my objective?
    Please help. Your inputs are precious! Thank you very much for your time!

  • To access a method frm a class derived frm a base class with the same name

    Here' s an example:-
    class TestA {
    public void start() {
    System.out.println("TestA");
    class TestB extends TestA {
    public void start() {
    System.out.println("TestB");
    }In main method I do this:-
    TestA testA = new TestA();
    TestB testB = new TestB();
    ((TestA)testB).start();Output :-
    TestB.
    Now when i define the method as static :-
    class TestA {
    public static void start() {
    System.out.println("TestA");
    class TestB extends TestA {
    public static void start() {
    System.out.println("TestB");
    }Then output is :-
    TestA.
    Can anyone let me know that when i say ((TestA)testB).start(); i.e i am type casting TestB obect to it base call then TestA should be printed but it doesn't print but when i declare method as static is does print TestA.
    Thanks,
    Heena

    >
    >
    Secondly, when i say ((TestA).testB).start(); output is TestB. But when i define start() method as static output is TestA. I need clarity for the same.In the static case, all that the compiler is interested in is the class of the expression before the ".". Because you've put in an explicit cast the type of expression is assumed to be TestA the compiler doesn't know what kind of object will actually be referenced at runtime. In the static case which method is called is determined at compile time.
    In the instance method case what determines the method called is determined the class of the actual, run time, value of the expression, and despite your cast, the actual value is still a reference to a TestB instance, so the TestB method is called. In the instance case which method called is determined at run time.

Maybe you are looking for

  • Is it possible to actually remove files from a hard drive? advice needed pl

    Hey guys and gals. i have a G5 Dual 2GHz Power PC with a problem. I recently had to do an archive and install (my second one). after getting thru with this and trying to get back what had been lost i realized that i only had about 90GBs left on my Sy

  • Is RDAC supported in Oracle Unbreakable Linux kernel 2.6.32-100.0.19.el5?

    Dear, Is RDAC supported in Oracle Unbreakable Linux Kernel 2.6.32-100.0.19.el5? If supported, please point to the download link. We require this in order to plan for the OEL 5.5 kernel upgrade to ULK and to connect SUN SAN storage array 6180. Thanks,

  • Document.getElementById Manual Tabular Form

    Hi, I'm working with APEX 4.1 and a manual tabular form. I have a page level validation process that fires and ensures that the value in column 1 does not match the value in column 6. When it does it pops up an error message along the lines of: The p

  • Is there a mechanism in Java similar to Properties in C#?

    A friend of mine is working on a project in C#, and periodically I've been examining his source code, and commenting on how similar the syntax and programming style seems to be to Java. Recently my friend asked me a question about 'Properties', which

  • Itunes Question! Please help!!!

    I just got a new Iphone 3G. I had a 3GS before but I decided to downgrade. I use to sync my 3GS with my old computer. I now have a new computer and a new 3G phone so this is the first time I am syncing them together. However, I saved the Itunes folde