Implementing method and add 'synchronized' keyword

Basically, I have the following scenario:
public interface ClassA {
  public void doSomething(String s);
} Then, the class that implements ClassA:
public class ClassB implements ClassA {
  public ClassB() {
    doSomething("Testing");
  public synchronized void doSomething(String s) {
    // Do something...
  public static void main(String[] args) {
    ClassB cb = new ClassB();
}ClassB implements the doSomething(String s) method but adds the 'synchronized' keyword. I compile this and get no errors, but I wanted to make sure that adding the 'synchronized' keyword to a method that is implemented is a legit thing to do.
The reason I am asking is that Rational Rose does not generate code for this situation correctly, and before I call tech support, I wanted to make sure that it is not a problem with what I am doing. When Rose generates the code, it gives a warning that the method doSomething was not implemented and it adds the method. I then have two methods called 'doSomething'.
Thanks

'synchronized' is not part of the method signature. But if you want to work around the problem, instead of declaring the method as synchronized, simply do this instead, which is equivalent (for non-static methods):
public void doSomething(String s) {
  synchronized (this) {
    // your code here

Similar Messages

  • Mail message to automatically add a keyword to a photo in aperture library?

    This is going to be a really specific and odd request.
    I am a photographer; and I am trying to set up a system using automator, aperture, and mail to be able to create a webpage that has a listing of a bunch of images with a basically a form that you can use to select picks that will then email the form results to me. I have the basic webpage output set up through automator and aperture, but the problem I am having is getting mail to lift the message contents, pass that on to filter the aperture files and add a keyword to the image.
    Basically, I want to have a rule set up that when a new messages comes in where the subject is imagepicks, it grabs the message content which is say 034365PDP080309, takes that and looks through the aperture library for image 034365PDP080309 and adds a keyword to it...
    Am I way outside of the scope of automator?

    Hello,
    I don't get what you mean by "a folder in the Finder"! A folder - unless hidden - is always browsable in the Finder.
    Then, what do you expect to be in those folders? A Word file, a RTF file, a simple text file?
    If you want to filter your mails, you can use "Rules" that you can access from Mail's preferences. This is far the best methods.
    There are other methods, but they require Unix programming skills and the setup of you own mail server locally on our Mac.
    Hoping this helps,
    Thierry

  • Can I add a keyword while making a bookmark?

    Is it possible to enter a keyword while I'm making a bookmark? I usually want to add a keyword when I make a bookmark, but the window only lets me enter "Name", "Folder", and "Tags". In order to add a keyword, I have to finish making the bookmark, and then "Show All Bookmarks" and find my new bookmark and add the keyword that way.

    Add code to the userChrome.css file below the default @namespace line.
    *http://kb.mozillazine.org/userChrome.css
    The customization files userChrome.css (user interface) and userContent.css (websites) are located in the chrome folder in the Firefox profile folder.
    *http://kb.mozillazine.org/Editing_configuration
    <pre><nowiki>@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); /* only needed once */
    #editBMPanel_keywordRow { visibility: visible !important; display: -moz-grid-line !important; }
    </nowiki></pre>

  • How to implement classes and methods in badi's ?

    how to implement classes and methods in badi's? and where i have to write the code based on the requirement?can anyone explain me briefly?

    Hi
    Every BADI by default Implements an INTERFACE which already contains some methods with parameters.
    So you have to find the relavenet method based on the related paramters (by checking the fields in that paramters) you have to double click on the method and to write the code.
    see the doc
    DEFINING THE BADI
    1) execute Tcode SE18.
    2) Specify a definition Name : ZBADI_SPFLI
    3) Press create
    4) Choose the attribute tab. Specify short desc for badi.. and specify the type :
    multiple use.
    5) Choose the interface tab
    6) Specify interface name: ZIF_EX_BADI_SPFLI and save.
    7) Dbl clk on interface name to start class builder . specify a method name (name,
    level, desc).
    Method level desc
    Linese;ection instance methos some desc
    8) place the cursor on the method name desc its parameters to define the interface.
    Parameter type refe field desc
    I_carrid import spfli-carrid some
    I_connid import spefi-connid some
    9) save , check and activate…adapter class proposed by system is
    ZCL_IM_IM_LINESEL is genereated.
    IMPLEMENTATION OF BADI DEFINITION
    1) EXECUTE tcode se18.choose menuitem create from the implementation menubar.
    2) Specify aname for implementation ZIM_LINESEL
    3) Specify short desc.
    4) Choose interface tab. System proposes a name fo the implementation class.
    ZCL_IM_IMLINESEL which is already generarted.
    5) Specify short desc for method
    6) Dbl clk on method to insert code..(check the code in “AAA”).
    7) Save , check and activate the code.
    Some useful URL
    http://www.esnips.com/doc/e06e4171-29df-462f-b857-54fac19a9d8e/ppt-on-badis.ppt
    http://www.esnips.com/doc/10016c34-55a7-4b13-8f5f-bf720422d265/BADIs.pdf
    http://www.esnips.com/doc/43a58f51-5d92-4213-913a-de05e9faac0d/Business-Addin.doc
    http://www.esnips.com/doc/1e10392e-64d8-4181-b2a5-5f04d8f87839/badi.doc
    www.sapgenie.com/publications/saptips/022006%20-%20Zaidi%20BADI.pdf
    http://www.sapdevelopment.co.uk/enhance/enhance_badi.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/04/f3683c05ea4464e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/e6/d54d3c596f0b26e10000000a11402f/content.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/c2/eab541c5b63031e10000000a155106/frameset.htm
    Now write a sample program to use this badi method..
    Look for “BBB” sample program.
    “AAA”
    data : wa_flights type sflight,
    it_flights type table of sflight.
    format color col_heading.
    write:/ 'Flight info of:', i_carrid, i_connid.
    format color col_normal.
    select * from sflight
    into corresponding fields of table it_flights
    where carrid = i_carrid
    and connid = i_connid.
    loop at it_flights into wa_flights.
    write:/ wa_flights-fldate,
    wa_flights-planetype,
    wa_flights-price currency wa_flights-currency,
    wa_flights-seatsmax,
    wa_flights-seatsocc.
    endloop.
    “BBB”
    *& Report ZBADI_TEST *
    REPORT ZBADI_TEST .
    tables: spfli.
    data: wa_spfli type spfli,
    it_spfli type table of spfli with key carrid connid.
    *Initialise the object of the interface.
    data: exit_ref type ref to ZCL_IM_IM_LINESEL,
    exit_ref1 type ref to ZIF_EX_BADISPFLI1.
    selection-screen begin of block b1.
    select-options: s_carr for spfli-carrid.
    selection-screen end of block b1.
    start-of-selection.
    select * from spfli into corresponding fields of table it_spfli
    where carrid in s_carr.
    end-of-selection.
    loop at it_spfli into wa_spfli.
    write:/ wa_spfli-carrid,
    wa_spfli-connid,
    wa_spfli-cityfrom,
    wa_spfli-deptime,
    wa_spfli-arrtime.
    hide: wa_spfli-carrid, wa_spfli-connid.
    endloop.
    at line-selection.
    check not wa_spfli-carrid is initial.
    create object exit_ref.
    exit_ref1 = exit_ref.
    call method exit_ref1->lineselection
    EXPORTING
    i_carrid = wa_spfli-carrid
    i_connid = wa_spfli-connid.
    clear wa_spfli.
    Reward points for useful Answers
    Regards
    Anji
    Message was edited by:
            Anji Reddy Vangala

  • Can you explain when using keywords and addding them to various clips pressing ctrl and a number eg. 1 or 2 it simply closes down FCPX.  Just to the dock as would th yellow -sign. As you gather I am new to this program having only used Final Cut Express 4

    Can you explain when using keywords and addding them to various clips pressing ctrl and a number eg. 1 or 2 it simply closes down FCPX.  Just to the dock as would the yellow -sign.  I am new to this program having only used Final Cut Express 4 previously.
    iMac (early 2009) 24in 2.93GHz 4GB 1066MHz DDR3 SDRAM (To be upgraded ot 8GB in the nextfew days) os x 10.7.2 Lion
    Re: Why don't my arrows on the time line operate and allow me to move to the start and end of the timeline. Iam using the trial version 

    Check System Preferences. I think Control-1 is used by something in the OS now. Switch it off. It's a major p[ain the way the OS is taking over more and more of the keyboard, allowing less options for application use.

  • Reg: How add methods and events to standard BOR

    HI Gurus,
    Can any provide me the details
    How to add methods and events to standard bor ?
    Please provide me details
    thanks in advance
    Rameshg

    Create a new Z_object BOR (subtype) using the standard BOR as Supertype.
    (Look also under [BAPI Modifications|http://help.sap.com/saphelp_nw04/helpdata/en/df/0495e4bd6f11d1ad09080009b0fb56/content.htm] at [Creating Subtypes|http://help.sap.com/saphelp_nw04/helpdata/en/df/0495e4bd6f11d1ad09080009b0fb56/frameset.htm])
    Regards,
    Raymond

  • Differences between Synchronized methods and blocks

    Hi all,
    I would like to differences between Synchronized methods and blocks.
    - Muni

    Well, you'll get so many of right answers in next ten to thirty minutes.
    I like to yield :)
    Oooo... Ten minutes has passed.
    Synchronized block is a toilet room with a lock in a public lavatory.
    Only one person(running thread) can have the lock at a time.
    And, she/he have to receive the lock from a particular object obj like:
    synchronized(obj){.....} // one object has only one lock for this {} toilet and for any other toilets how many there are... *
    (*: In other words, while a thread is executing a synchronized(obj){} block, other threads can't enter other synchronized(obj){} blocks.)
    Synchronized method is a kind of synchronized block.
    This special block is defaulted to have lock from the object on which the method is defined.
    public class Foo{public synchronized Method(){}}
    use the lock of a Foo object.
    Message was edited by:
    hiwa
    Message was edited by:
    hiwa

  • [svn:osmf:] 9866: Adding '@throws' clauses to ILayoutRenderer add/ remove target methods, and adding a 'targets(target:ILayoutTarget)' method that allows checking addition/removal validity up front.

    Revision: 9866
    Author:   [email protected]
    Date:     2009-09-01 00:56:48 -0700 (Tue, 01 Sep 2009)
    Log Message:
    Adding '@throws' clauses to ILayoutRenderer add/remove target methods, and adding a 'targets(target:ILayoutTarget)' method that allows checking addition/removal validity up front.
    Modified Paths:
        osmf/trunk/framework/MediaFramework/org/openvideoplayer/layout/ILayoutRenderer.as
        osmf/trunk/framework/MediaFramework/org/openvideoplayer/layout/LayoutRendererBase.as

  • About the implementation of HashSet.add( ) method

    Hi guys,
    recently, I read the source code of HashSet, about the code of method of add():
    public boolean add(E e) {
         return map.put(e, PRESENT)==null;
    I wonder why we need put 'PRESENT' to the value ? why not we put NULL to the value , like this:
    return map.put(e, NULL)==null;
    Please tell me the truth, thx a lot.

    YoungWinston wrote:
    user11230334 wrote:
    I wonder why we need put 'PRESENT' to the value ? why not we put NULL to the value , like this:
    return map.put(e, NULL)==null;
    Please tell me the truth, thx a lot.As I recall, A HashSet<K> is actually backed by a HashMap<K, Boolean>, the Boolean being set to Boolean.TRUE Nope. <K, Object>
    (and I suspect you'll find that PRESENT == Boolean.TRUE) for all entries.Nope:
        private static final Object PRESENT = new Object();
    - and furthermore is guaranteed to return null if the key didn't originally existAs EJP (and somebody else, I believe) pointed out, this is probably the heart of the reason to use an Object instead of null for the value.

  • Use of synchronized keyword with portal services

    Hi,
    Can you confirm me if it is true that a portal service is a Singleton? I mean, when using an instance variable of a portal service I am able to set the value of the instance variable using one client app and get it afterwards using another client app. So we are talking about the same and only instance of the portal service, right?
    If this is true how can I synchronize the access to a portal's service method? I tried to mark
    the method syncronized (in the interface) but then I realized that this issues a compiler error because one can not mark an interface method synchronized. So can I mark the implementation class instead? That is, can I leave the interface without the synchronized keyword for the method and still mark the implementation of the method in the service class as syncronized? Does this work?
    Thanks in advance,
    Diz

    Hi,
    Portal service is not a Singleton, as the name says a service is just provider for services which does not save state between two requests/applications.
    So if you want to save state, then use some session variables to save it.
    In a cluster installation, each server node has its own portal services, so if you save state in service, then your application should save this state on all servers of the cluster.
    So you should change your approch.
    http://help.sap.com/saphelp_nw70/helpdata/en/e3/fab74247e2b611e10000000a155106/frameset.htm
    Greetings,
    Praveen Gudapati
    [Points are always welcome for helpful answers]

  • Abstract method and class

    I'm a beginner in Java and just learn about abstract method and class.
    However, i am wondering what is the point of using abstract method/class?
    Because when I delete the abstract method and change the class name to public class XXXX( changed from "abstract class XXXX), my program still runs well, nothing goes different.
    Is it because I haven't encountered any situation that abstract method is necessary or ?
    Thanks!

    Yes - you probably haven't encountered a situation where you need an abstract.
    Abstract classes are not designed to do anything on their own. They are designed to provide a template for other classes to extend by inheritance. What you have build sounds like a concrete class - one which you are creating instances of. Abstract classes are not designed to be ever instantiated in their pure form - they act like a partial building block, which you will complete in a class which extends the abstract.
    An example might be a button class, which provides some core functionality (like rollover, rollout etc) but has an empty action method which has to be overwritten by a relevant subclass like 'StartButton'. In general, abstract classes may not be the right answer, and many people would argue that it is better to use an interface, which can be implemented instead of extended, meaning that you can ADD instead of REPLACING.
    Not sure if that helps.. there are whole chapters in books on this kind of thing, so it's hard to explain in a couple of paragraphs. Do some google searches to find out more about how they work.

  • Hiding methods and attributes while inheriting

    Hello All,
    This is kinda urgent. While making a subclass I want to block access to methods and attributes of super class when anone creates an object of sub-class. In my particular situation I cannot override the methods.
    Let me explain it with an example:
    I have a class A which contains an attribute of type Object. All the methods accept Object type parameters and act accordingly. Now I want to create a sub-class B which acts on Strings only. I can create a wrapper to class A but I want to add some behavior which is specific to strings and use rest of the behavior as in class A. I cannot override the methods of class A because they take Objects as parameters whereas in class B the same methods take string as parameters.
    I hope you have understood the problem. Please reply ASAP.
    Thanks in advance

    Sorry the diagram turned out wrong. ObjectClass and StringClass are both supposed to be derived
    from the AbstractBaseClass.
    This method is one way to achieve what you want. You make an AbstractBaseList class that has only
    protected methods that take objects.
    To implement a generic Object version of this class you extend it and override the protected methods in
    the AbstractBaseList class to make them public.
    To implement a String list you extend the AbstractBaseList class and override the protected methods to
    make them public (but change the type of the parameters).
    The only problem with this approach is that the return types of the methods cannot be changed. Therefore
    I recommend the AbstractBaseList implement a method called
    protected Object getByIndex(int i) {
    // do list type stuff in here
    Then the ObjectList can implement
    public Object get(int i) {
    return super.getByIndex(i);
    and the StringList can implement
    public String get(int i) {
    return (String) super.getByIndex(i);
    In effect all you need to do is to implement wrapper classes that enforce type casting on the Object based
    set/get values.
    Another option is to use JDK1.5 with its generics classes. These effectivly allow you to specify which type of
    object an instance of a class accepts.
    Another question. What is the matter with the Collections classes provided in the JDK?
    matfud

  • Using interface builder to create a table view and add a cell

    So I am using interface builder to make a table view. Should be easy. I drag a table view controller to my view, then it seems I should be able to drag a table view cell to the table view but it won't let me drop it down. If I do it in the documents window it just replaces the table view with a cell. Seems like this shouldn't be hard, but it's one of those things that should take 2 seconds but I have been messing with it for hours. It seems like most of the examples I have looked at in the same code don't use iB so I haven't found a good reference. If somebody can point me in the write direction let me know.

    I struggled a bit too. Here's what I did on my recently completed app. I used IB to create the basic view and add the table. That's it. Then ensure your UIViewController based class implements the UITableViewDelegate and UITableViewDataSource protocols. Your cells will come from those methods, not anything you do in IB.
    If you're creating a set of screens that just have tables that allow you to navigate up and down through the data then IB isn't worth using at all.
    Just have your views extends UITableViewController and follow some of the supplied table based example apps.
    I rewrote my first app 3 times as I slowly figured all of this out.
    Hope that helps.

  • Actual Benefits of final methods and final parameters

    I know that a lot of this depends on the JVM and the actual code, but I was wondering what the actual real world advantage was of using final methods and final parameters.
    I use a business and data layer for my program to interact with the database. So all of the methods in these classes are public and static. I was just wondering if it would be benefical to make all of these methods final and all of the parameters final also. I won't ever be making subclasses of these classes, so is this worth doing?
    Thanks,
    Dave Johansen

    On the point of final, this should always be a design decision. That is, does it make sense to allow your class to be overridden? Making classes and/or methods final is a big barrier to future enhancements and extendability - so only make soemthing final if you haver a specific reason for doing so.
    Any performance issues should not take a high precedence in this decision - and in any case the difference in making something final will be non-existant for all practical purposes.
    How about volatile?
    I get the meaning of synchronized but
    volatile?Volatile is a keyword that tells the JVM it can't optimize / inline serctions of code that use certain variables. You may not realise it, but the JVM takes your bytecode and chops them up and re-arranges them at runtime, to boost performance. This can sometimes have dangerous consequences in a mutlithreaded environment, so by adding the volatile keyword you are saying to the JVM (or specifically HotSpot) not to perform any "code magic".
    Here's a simple example:
    public class TestClass {
        private boolean check = false;
        public void setTrue(){
            check = true;
        public void check(){
            check = false;
            if(check){
                System.out.println("Will this ever print?");
    }Obviously the string will never print in a single threaded environment. However, in a multithreaded environment, is is possible that a thread could call setTrue() between another thread setting the value to false and performing the if() check. The point is that due to runtime optimization, Hotspot may realise that check is always false, so completely remove the code section with the if block. so regardless of the value of the boolean, the code may never be entered.
    One solution is to declare the boolean check as volatile. This tells the JVM that such optimizations are not allowed and then it is entirely possible for the string to be printed.
    One curiousity, off-topic:
    is there a way for jvms instantiations to see each
    other?Have you looked into RMI?

  • Add/Remove Keywords to multiple files?

    Hi Mac users!
    Is there a way to automatically add and/or remove keywords from mltiple files?
    First I would like to remove all the keywords from many of my files and then assign common keywords to selected files!
    One can do it manually, one by one, but that would take a huge amount of time!
    Is there any automatic way to do it? Perhaps with a specific application?
    Thanks for your help!

    Well I mis-spoke when I said they implemented what I asked for. They actually did something even better.
    There's a little text-entry area at the bottom of the keyword panel. You can type keywords in here and it finds them in the list (click the little magnifying glass icon to control how it searches--I have it set to "equals" so it will only do exact matches). When you hit enter, it automatically adds the matching keyword to the files. Or if there is no match, it creates a new keyword and adds it both to the keyword list and the selected files. Use ; to add multiple new keywords at once.
    Bart

Maybe you are looking for

  • Administrator account is disable when deploying windows 7 x64 captured image

    I'm using MDT 2012 update 1. I create one deployment share with two task sequence. The task sequences are: one for windows 7 x86 and the other one is windows 7 x64. Both are working fine until I try to sysprep and capture with all the windows updates

  • What size MacBook Pro is best for graphic designers?

    I am entering an Emerging Media/graphic design program that requires a MacBook Pro to do my work on. Am I ok to get the 15" or do I need the 17"?

  • Most recent date (UDATE) from CDHDR table based on CDPOS

    Hi, I am working on one object where i stuck with one issue. The requirement is I have to retrieve the most recent date from CDHDR table based on CHANGENR in CDPOS table. Where i am doing FOR ALL ENTRIES on CDPOS table to get the MAX( date )and i got

  • Everything in iTunes has gone!!

    I remember that once I restarted my computer and opened iTunes regularly, and I found my play list is blank which means everything has gone. its like I reinstalled the program. However I didn't. what I did was add my 3000 songs again.... and I also c

  • Can't download iPhoto 4.0.3 for my new iPod

    I'm a complete newbie in need. So apologies for not knowing much termonology. I'm working with an iBook G3 which has iphoto 2.0.1. I've recently been bought a new ipod with also holds photos & video. Though when I've tried to update my old iphoto by