Standards or best practises for Java imports?

I was just wondering how some of the more seasoned developers out there handle Java imports. I'm fairly new to Java programming and as far as I know there is very little difference between explicitly importing individual classes and importing entire packages, other than at compilation time on large projects, however I'm wondering if there is an official standard or if you have any personal preferences for it.
Personally I always used to import packages unless I was only using one class from the package, however I have a friend who swears by importing individual classes for everything you use unless you are using almost every class in the package. I'm thinking that a happy medium might be to put a level of inclusion on your work, say if you use less than 50% of classes you should import them individually, but if you use more than 50% you should import the entire package.
I realise that it doesn't make a great deal of difference to the overall outcome of a project, I'm just looking for your opinions and experiences with it.

If you're working on a large codebase with a team, then it is helpful to use explicit imports, so that others can readily see which package particular classes come from.
Also consider the case where there two classes from different packages share a name. In this case you must use at least one explicit import.
But what if this situation doesn't exist (yet). You import two packages using wildcards. And then later someone comes along and creates a class in the second package with a name used by a class in the first package. Suddenly the class with the wildcard imports won't compile. Perhaps this is a contrived example.
Regarding personal practice, I usually use explicit imports for the first reason listed above. But secondly, I like to do so because it forces me to remember the package to which the class belongs. Most programmers type pretty quickly, so it's not much of a burden.
By the way, the compile-time cost, if it is even measurable, is no factor whatsoever. Writing readable and maintainable code is much more important.

Similar Messages

  • What are the BEST Books and Best websites for java biginners?

    Dear All,
    What are the BEST Books and Best websites for java biginners-Especially for fast learning.
    Thnaks
    KMK

    This is my standard reply:
    [Sun's basic Java tutorial|http://java.sun.com/docs/books/tutorial/]
    [Sun's New To Java Center|http://java.sun.com/learning/new2java/index.html]
    Includes an overview of what Java is, instructions for setting up Java, an intro to programming (that includes links to the above tutorial or to parts of it), quizzes, a list of resources, and info on certification and courses.
    jGuru
    A general Java resource site. Includes FAQs, forums, courses, more.
    JavaRanch
    To quote the tagline on their homepage: "a friendly place for Java greenhorns." FAQs, forums (moderated, I believe), sample code, all kinds of goodies for newbies. From what I've heard, they live up to the "friendly" claim.
    [Yawmarks List|http://forums.devshed.com/java-help-9/resources-for-learning-java-249225.html]
    [The Java Developers Almanac|http://www.amazon.com/exec/obidos/tg/detail/-/0201752808?v=glance]
    [http://javaalmanac.com|http://javaalmanac.com]
    Bruce Eckel's [Thinking in Java(Available online.)|http://mindview.net/Books/DownloadSites]
    Joshua Bloch's [Effective Java|http://www.amazon.co.uk/exec/obidos/Author=Bloch,%20Josh]
    Bert Bates and Kathy Sierra's [Head First Java|http://www.amazon.com/exec/obidos/tg/detail/-/0596004656?v=glance ]
    James Gosling's [The Java Programming Language|http://www.bookpool.com/sm/0321349806]
    Gosling is the creator of Java. It doesn't get much more authoritative than this.
    Joshua Bloch and Neal Gafter [Java Puzzlers.|http://www.javapuzzlers.com/]

  • Best practice for java script placement on a BC page?

    Hi guys just a general ask about where the best place for java script is on a BC page.
    I just watched the this very good video on optimization http://bcgurus.com/tutorials/how-to-do-website-performance-optimization and in it it says how you should try and load the scripts at the bottom of the page so that it loads quicker.
    now I want to do this but with it being a BC site i dont know if certain scripts have to be in the head of the doc. For instance the validate script I have? Does anyone know what I can and cant move from the head?
    I was going to do what kiyuco like to practice and add all my scripts to a content holder and then add that to my pages/templates. Will BC like me adding this to the bottom of the page and not the head?
    Thanks
    Dave

    http://forums.adobe.com/docs/DOC-2964

  • " Why not Emacs Be the best editor for java"

    hai friends,
    iam using emacs editor for java. i think it is the best editor for java available
    for free of cost.
    we can easily customize it based on ur needs
    we can even customize the compilation and run option with single key stroke.
    and it has many interesting and useful features like shell, bsh, cvs customization,telnet
    and a lot more....
    many software concerns had made emacs as thier offical java editor
    i donot think anybody in this world who had used the emacs will go for some other editor
    and i do want to know from u all that whether i was wrong . and
    is there any other editor which can be better than emacs
    if so give me valid reasons
    get back to me if u are not aware of emacs features
    regards
    g.kamal

    I agree with you 100% on linux side, but in
    windows(tm) there are even better editors. I
    personally use MED in windows. After trying dozens of
    different editors in linux I ended up using emacs, it
    sure is the best editor in linux (for Java atleast).
    There are still some things bugging me, for an example
    I would like the "end" button to move the cursor to
    the end of the line instead of EOF.
    I donot understand why ur saying that the "end" button is not moving the cursor to the
    end of the line
    it works fine in my machine
    plz elaborate what more features u want, bcas it may be there in emacs , but u may not have that
    much awareness in it.
    regards
    kamal

  • What is the best practise for setting dirty flag of a page/view?

    For a page/view, normaylly there are 2 things to do for diry data:
    1. when it's clean, Save button is disabled, when it's dirty, save button is enabled.
    2. when it's dirty and the window is closed, a popup says "you have unsaved data, close will lose the data".
    My thought is: it must be handled at client side, because not all valuechange is auto submitted. E.g., you type the 1st letter of a string in a input box, the server side does not know it, but save button should be enabled immediately.
    Is it possible to capture all valueChange events in a page or a view at client side?
    I'm not sure what is the best practise for setting dirty flag? If there is better solution? Does ADF provide facility for this?

    public void save(ActionEvent event){
    boolean formValid = isFormValid();
       if (formValid) {
      save button is enabled.
        private boolean isFormValid() {
            boolean valid = true;
            if (Check Condition 1) {
                valid = false;
               showErrorMessage1();
            if (Check Condition 2) {
                valid = false;
               showErrorMessage1();
            return valid;
        private void showErrorMessage1() {
                    when it's dirty and the window is closed, a popup says "you have unsaved data, close will lose the data".

  • Best Practise for connecting to Ethernet based device

    Hi,
    I have inherited a system where we have a cDAQ-9181 controlling an vehicle access barrier, with a LabView application on  a PC talking to it via Ethernet.
    (The application is very simple - press a button > send a value to the 9181 unit > opens the barrier )
    All works fine most of the time.
    ( We occasionally get network related errors. The LabView application sometimes thinks another PC has reserved the unit, or gives “error 89130 - device not available for routing” )
    The users would now like to be able to easily run the application from a second PC ( not at the same time ), but this seems to be a problem. If I exit the application on PC “A” and run it on PC “B” it struggles to reserve the chassis, and throws the “89130” error and I have to restart the unit via MAC.
    While I’m a “veteran” control programmer, I’m new to LabView, and would be very grateful for any pointers on “best practise” for talking to devices via Ethernet, or any specific suggestions for handling multiple PCs talking to a single device.
    Thank You.
    Tim.

    Hi Tim,
    Thank you for your post and welcome to the NI forums.
    There are lots of knowledgebase articles on our website and you should be able to find documentation for most of our hardware.
    There is a good troubleshooting guide for cDAQ Ethernet here (http://ae.natinst.com/public.nsf/web/searchinternal/e67b4e4749f378ff862577270059bd4b?OpenDocument) - it outlines the steps to take to ensure you have a stable a connection as possible. You may have already seen it, but the quick-start guide for your specific device may also be worth consulting for best practices. Are these helpful?
    As for using more than one PC - this shouldn't be too much of an issue. I would expect that the resource isn't being closed correctly - when you exit the App on PC 'A', how are you closing off the resource?
    Best regards,
    Eden S
    Applications Engineer
    National Instruments UK & Ireland

  • Best Practise for rebooting ISE Nodes?

    Hello Community,
    I administer an ISE installation with two nodes (I am not an ISE Specialist, my job is just to manage the user/mac-adresses... but now I have to move my ISE Nodes from one VMWare Cluster to another VMWare Cluster.
    (Both VMWare environments are connected to our enterprise network, but are different environments. vMotion not possible)
    I would shutdown ISE02, move it to our new VMWare environment and start it again.
    Than I would do this with our ISE01 Node...
    Are there any best practises for doing this? (Shutdown application first, stopl replikation etc)?
    Can I really simply reboot an ISE Node - or have I consider something bevor I doing this? After I doing this?
    Any tasks after reboot?
    Thank you for any answer!
    ISE01    
    Administration, Monitoring, Policy Service    
    PRI(A), SEC(M)
    ISE02    
    Administration, Monitoring, Policy Service    
    SEC(A), PRI(M)

    There is a lot to consider here.  If changing environments means changing IP Address and IP Scopes, then your policies, profiles, and dACLs would also have to change among other things.  If this is the case, create a new ISE VM in the new environment using the built in evaluation license and recreate the deployment from the old environment using the addressing scheme of the new environment.  Then spin-up a new Secondary node and register it on the Primary.  Once this is done, you can re-host the license from your old environment onto your new environment.  You can use this tool to re-host:
    https://tools.cisco.com/SWIFT/LicensingUI/loadDemoLicensee?FormId=3999
    If IP Addressing is to remain the same, it gets simpler. 
    First, and always, perform a configuration and operational backup.
    If downtime is not an issue, or if you have a maintenance window of an hour or so: Simply shut down both nodes.  Transfer them to the New Environment and turn them on, Primary Node first, of course.
    If downtime is an issue, shut down the Secondary Node and transfer it to the New Environment.  Start the Secondary Node and when it is up, shut down the Primary Node.  Once services on the primary node have stopped, promote the Secondary Node to Primary Node.
    Transfer the OLD Primary Node to the New Environment and turn it on.  It should assume the role of Secondary Node.  If it does not, assign that role through the GUI.
    Remember, the correct way to shut down an ISE node is:
    application stop ise
    halt
    By using these commands, the risk of database corruption decreases by about 90% (Remember to always backup).
    Please Rate Helpful posts and mark this question as answered if, in fact, this does answer your question.  Otherwise, feel free to post follow-up questions.
    Charles Moreton

  • SAP Best Practises for Logistic Modules

    Dear Reader,
    Does anyone know how to find SAP Best Practises for Netweaver 2004s Logistic scenarios (SD, MM,)
    The old Netwvr 2004 scenarioas are less helpful, especially in Inventory mgmt.
    Thanks

    Check this link, this is the latest I guess.
    [SAP Best Practices|http://help.sap.com/bp_bw370/html/index.htm]
    Cheers,
    Neel.

  • Best practises for replication

    Hi,
    I want to know what is best practise for duration of replicaation of database between two Cisco ACS.
    Regards,
    Atif.

    Hi Atif,
    The replication time interval should always be higher.
    Reason: Everytime you replicate the data it requires ACS services to restart so doing this frequently may affect your production enviroment.
    However, if you want to replicate internal user's password then there is an option to replicate password changes right awayvwithout a full replication.  You can enable this option under System Configuration -> Local Password Management.  With this enabled you could potentially set the replications to a larger interval.
    It also depend how often you do changes in your ACS. If its normal then I would say set it to every sunday 12:00 PM.
    This is how replication happens:
    The primary ACS stops its authentication and creates a copy of the ACSinternal database components that it is configured to replicate. During this
    step, if AAA clients are configured properly, those that usually use the primary ACS fail over to another ACS. The primary ACS resumes its authentication service.
    After the preceding events on the primary ACS, the database replication process continues on the secondary ACS. The secondary ACS stops its authentication service and replaces its database components with the database components that it received from the primary ACS. During this step, if AAA clients are configured properly, those that usually use the secondary ACS fail over to another ACS. The secondary ACS resumes its authentication service.
    HTH
    Regards,
    JK
    Plz rate helpful posts-

  • Best Practises for doing Master Scheduling using SNP

    Hello Gurus ,
                         Can you please suggest the best practises for doing Master Scheduling using SNP . Which engine to use , what would that mean etc
    Regards,
    Nick

    APC Back-UPS XS 1300.  $169.99 at Best Buy.
    Our power outages here are usually only a few seconds; this should give my server about 20 or 25 minutes run-time.
    I'm setting up the PowerChute software now to shut down the computer when 5 minutes of power is left.  The load with the monitor sleeping is 171 watts.
    This has surge protection and other nice features as well.
    -Noel

  • ECC 6.0 upgrade to  Best practise for chemical industry implementation

    Dear All.,
    Please tell me what all the  EHP3 must be updated in the SAP erp ecc 6.0. I have already updated
    SAP_APPL 60304.
    Tell me what is the next Ehp3 required before i start best practise in saint.
    Thanks & Regards,
    Manju

    Dear sir.,
    I have  installed SAP ECC 6.0 for a chemical industry, now am planning to implement Best practise to reduce implementation time.
    1) As per the SAP Quick quide i have downloaded best practise for chemical industry(IS) and implemented through SAINT,  and the prerequisites were maintained as per the SAP notes 774615,1301301,1064635,
    2)The above mentioned notes explains minimum stack11 and sapka=18,sapkb=18,sapbw=20,PI_Basis-2005_1_700=20 and sap_ap=15 to update Ehp3 for SAP_APPL603.
    3) After updating all the above mentioned patch level i implemented the Best practise in saint and that was successful.
    But still  the problem persist in activation of BP by tcode /n/smb/bbi only 70% has been completed and activation stoped with *ABAP program error ASSIGNSUBSTRING_NOT_ALLOWED and relevent note is 1295083*_
    Please  any one tell me, is that required to update all the EHP3 components since i have maintained only SAP_APPL60304.
    What all Ehp3 components should be updated to get a smooth activation og BP for chemical industry.

  • Wats the best practise for performance

    Hi all,
    In my out line i have 15 dimensions and for one dimension i have 39000 members so wat is the best practise for performance , If we have more dimensions and more meebers is there any problem for performance
    so wat is the best practise for dimensions and members??
    Thanks in advance??

    If it is ASO application it is not a problem.
    If it is a BSO application surely it will hit the performance.
    More dimensions will create performance issues.
    If the said 39000 members dimension is a Flat dimension. It will be another issue.
    If BSO is obvious try to split into two models.
    Create intermediate groupings for the Filat dimension.

  • How to install Best Practise for HCM

    Hi all:
        Could you please tell me how to install best practise for HCM , as there is no autoran file.
        Thank you very much!!!
    Best regards
    Frank

    Hi,
    Did you chk this link;
    http://help.sap.com/content/bestpractices/overview/index.htm
    http://help.sap.com/bp_hcmv1600/HCM_US/HTML/index.htm
    Regards
    CSM Reddy

  • What's the best XML for JAVA?

    Hi There,
    My big question is what should I use for develop a normal XML document, that can:
    - contain BASE64 strings
    - support UTF-8 add attributes, etc.
    I then want to pick this document and:
    - do it's parsing (walk trough)
    - apply a xsl to this document.
    I've made this in C using libxml2 for WIN32/HP-UX, and also in VB using msxml4, now I must make the same document in Java, I see a lot of alternatives but really don't know what to choose...
    In these languages I pick a structure that we support (similar to a tree) and serialize it to XML, send it as a string and then rebuild the initial structure with flaws. Each client can have a xsl file to show the information in the way he wants to.
    So, I ask your opinion what's the best for JAVA (a fast learning curve is preferable, but speed of processing is very, very important)?
    Thanks in advance for all the replies,
    Lu�s Pinho

    Have you looked at Apache's XML Beans?
    http://xml.apache.org/xmlbeans/

  • Best practise for external service when amount is not sure

    Hi friends ,
    What could be the best practise from the PM side when we want to send an equipment for external repair
    and the service cost is not sure .
    Also if we will create only service PR and not PO then there could be some legal problems while sending the equipment outside.
    What I am thinking is to create a service PR -> PO and then setting the actual cost while invoicing .
    Is it fine ?
    We would prefer if we can take some print out of the external service mentioning following data through standard SAP :
    1) Vendor Name
    2) Our Co name .
    3) Address from where the equipment is dispatched
    4) Address where equipment is to be sent .
    5) Contact No .
    6) some Dates
    Any suggestions.
    Regards
    AM
    Edited by: Amehra on Jul 7, 2011 1:53 PM

    Hi,
    it is not necessary to enter the exact amount for external service in PM order ,
    exact amount must be confirmed during service entry sheet ml81n
    or it also be adjusted during miro ( invoicing )
    and for prininting , most of the part as u said are covered in standard printing of Maintenance order, PR and PO
    otherwise there must be customized PO printing in ur organisation that can be change if ur requirements does not meet
    Regards,
    Jitender

Maybe you are looking for