New to Java-Need book that explains OOP concepts

Hi-
This as a great forum!
I have been programming in VB for a while and now I'm trying to learn Java. Can someone please tell me which book is best for learning concepts like objects, classes, visibility etc; Most of the books I have seen go too fast or do not cover enough detail. I would like to find something that has lots of examples (diagrams are nice) and covers OOP thoroughly.
Thanks!
Ken

The "Head First" books might be a good, gentle intro:
http://www.amazon.com/Head-First-Object-Oriented-Analysis-Design/dp/0596008678/ref=pd_bbs_sr_1/104-1237750-7651950?ie=UTF8&s=books&qid=1184865003&sr=8-1
%

Similar Messages

  • My daughter is 12 and need books that highlight and read out loud how do i know whick book have that, i could only find kid books

    my daughter is 12 and i need books that highlight and read out loud, how do i know whick books do that

    Regarding the cursor moving on its own, see:
    My mouse keeps moving around on its own, as if someone is remotely controlling my Mac!
    This is not known behavior of Flashback.  To make sure you're not infected, just install any updates that are available in Software Update.  For more info on this, see About the Flashback malware.
    That e-mail just sounds like a phishing attempt, and trying to open and view the attached zip file is a major error!  It probably contains malware.  Fortunately for you, it's almost certainly Windows malware, as I've never yet heard of a case of Mac malware being sent via e-mail in this way.  But it could happen, so you should never, ever open attachments from people you don't know, especially in such suspicious circumstances!
    Finally, I, like etresoft, have never heard of Avira.  There's a lot of bad AV software out there, so without knowing more about it, I would agree that it should be removed, using whatever uninstaller is provided by Avira.  If you want to use AV software, use either Sophos Anti-Virus for Mac Home Edition or ClamXav.  Both are free and excellent.
    (Note that my pages contain links to other pages that promote my services, and this should not be taken as an endorsement of my services by Apple.)

  • Very New to Jave, need to do totals/subtotals

    Hi, (I hope this is the right place)
    I'm VERY new to Java (I mainly do wourk with php interfaces for MyAQL databases).
    Up until now, there hasn't been anything I couldn't do with PHP that I needed to...
    My boss recently requested subtotals/totals at various points on an input sheet. The sheet inputs numbers of people, so I'm not worried about rounding (The php already takes care of people trying to input parts of people....) or tax.
    It's a rather large form (~144 lines) and the math is already in place to do the subtotaling (among other things) before entering the information into the database.
    How would I go about writing script that would display sub totals, and recalculate them every time one of the boxes value's is modified?
    Is this something javascript is designed to do? Is there a better language out there for this task?
    I've found sites out there that have canned subtotal/total scripts, but I don't want something pre-made unless it comes with a detailed explaination of what everything does; if I'm going to maintain it, I have to understand it.
    Thanks

    Is this a web form? e.g. a html form with input fields?
    You can add onchange or onblur events to your input fields to detect changes. Then you can use javascript to retrieve the values from the form and do the calculation.
    -S

  • Hi, i'm new to java. need help setting the path in win XP

    hi all,
    i'm new to java technology. i've just downloaded the JDK and ran my first java program (hello world). i love it. java's gr8. i need help. i run win XP and how can i setup the path sothat i can execute my programs from the root dir??? any help in this direction will be greatly appreciated. please email me @ [email protected]
    Best regards
    Mrinal

    Go to Start menu and select Control Panel. In the Control Panel, double click on System. In the System dialogue, choose the Advanced tab. Then click on Environmental Variables. Select Path and Edit. Put ;c:\j2sdk1.4.0\bin at the end of the Path (or c:\j2sdk1.4.0\bin;) at the start of the Path. That's it.

  • New to java needs advice

    Hi,
    I'm completely new to java and after a few days search found Studio Creator and decided to use it. Happily developing for a week in JSC, I reached the deployment to Tomcat stage.
    Mybe I'm missing something but I find this stage ruining the ease-of-use feeling which I got when I started using JSC.
    Am I right that JSC doesn't have a built-in functionality to deploy to Tomcat whithout my intervention, considering my total unfamiliarity with xml, jsp, mysql, etc.?
    If so do you guys know of another easy-to-use IDE like JSC?
    Any pointers are greatly appreciated.
    Thanks, Abraham

    Hi,
    Try this FAQ on
    How do I deploy web applications developed with Java Studio Creator to the Tomcat Servlet/JSP Container?
    at http://developers.sun.com/prodtech/javatools/jscreator/reference/faqs/technical.jsp
    MJ

  • New to java(need help on access specifier)

    hi! i am new to java.plzzzzz help me i have to make a project on access specifier's i know all theroy.but
    i am unable to understand how i can define all specifiers practicly.i mean in a program.
    thanks.plzzzzzzzz help me

    the most common project i can think of is a payroll system..
    you can have real implementation of all the access specifiers
    good luck

  • I need books that would help do solaris 10 CX-310-200 and CX-310-202 exam

    hi i want to do solaris 10 system administration exam anyone has book that would help me do CX-310-200 and CX-310-202 exam?

    Bill Calkin's Solaris Administration books are very helpful for these exams. Also you can use Solaris Admin Collection which can be found from this link: http://docs.sun.com/app/docs/coll/47.16
    Good luck to you!

  • New to Java need to parse a page on HTTPS server

    Greetings:
    I am writing a "widget" on Macintosh that goes out and gets a simple piece of information from a page within a secure sever (HTTPS).
    The big picture is: I need to send login information which is stored in a JavaScript form to a java application that would go to the https site and login and then go to a page and parse it for a number. This has been done in Perl originally but the Perl requires a specific library added to your system. My java application needs to pass the number back to JavaScript and hence a number will show up in my widget's window. There will be no browser involved... the widgets are JavaScript/XML based.
    I would need a good example of code to do this as I am VERY new. If anyone can help please let me know.

    http://onesearch.sun.com/search/developers/index.jsp?charset=UTF-8&qt=%2Bparse+%2Bhttps&col=javadoc&col=devforums&col=javatecharticles&col=javatutorials&col=devarchive&col=javasc&col=devall

  • New to Java, need assistance

    First, I'd like to apologize in case this post is in the wrong place.
    Now I'm new to Jcreator and I missed about a month from my computer programming class in school, and am far behind. My assignment right now is this problem p5.12 from Computing Concepts with Java Essentials it says:
    "A year with 366 days is called a leap year. A year is a leap year if it is divisible by 4 (for ex.,1980). However, since the introduction of the Gregorian calender on October 15, 1582, a year is not a leap year if it is divisible by 100 (for ex., 1900); however, it is a leap year if it is divisible by 400 (for ex., 2000). Write a program that asks the user for a year and computes whether that year is a leap year., Implement a class *Year* with the method *boolean isLeapYear*
    This is the code that I came up with:
    import javax.swing.JOptionPane;
    public class LeapYear {
         public static void main(String[] args) {
              String input = JOptionPane.showInputDialog("Enter Year");
              double year = Double.parseDouble(input);
              LeapYear newYear = new LeapYear(year);
              System.out.println(newYear.boolean isLeapYear()); //line 11
    public class LeapYear {
         private double year;     
         public LeapYear(double year)
                   a = year;
              public boolean isLeapYear(){
                   if(a % 4 == 0)
                             if(a % 100 != 0) System.out.println("Leap Year");
                   else if (a % 400 == 0) System.out.println("Leap Year");
                   else System.out.println("Not Leap Year");
    The error I am receiving is on the 11th line of the test class. I know if there is something wrong besides that. I'm not asking for someone to fix this for me but I would like if somebody could give me advice on what to do, hints, explain where I went wrong, or know of any good tutorials I could read that could help me with this it would be much appreciated.

    Year           Is Leab Year?
    1           no      
    4            yes
    1580            yes
    1582           no      
    1584            yes      
    1600            yes      
    1700            no      
    1800            no      
    1900            no      
    1996            yes      
    1997           no      
    1999            no      
    2000            yes      
    2100            no      
    2200            no      
    2300            no      
    2400            yes      
    2800            yes      
    2900            no      
    3200            yes      
    3300            no      
    3600            yes      
    3800            no      
    4000            yes      
    4200            no      
    4400            yes      
    4700            no      
    4800            yes      
    5100            no      
    5200            yes      
    6400            yes      
    6500            no      
    6800            yes      
    6900            no      
    7200            yes      
    7400            no      
    7600            yes      
    7800            no           

  • Need docs that explain Fibre Channel setup, getting I/O error on 2540 SAN

    Sun T5220 Host running Solaris 10 5/09 as management host.
    Qlogic 5602 FC Switch
    Sun Storagetek 2540 - one controller tray with 9 300G SAS Hitachi drives. Firmware 7.35.x.
    Sun branded Qlogic QLE2462 HBAs - PCI express, dual port. 3 in the T5220. qlcxxxx drivers for the HBAs.
    Sun Common Array Manager software version 6.5.
    I am a long-time Oracle DBA who has the task of setting up a Fibre Channel SAN. I am not a Solaris sysadmin, but have installed and maintained large databases on Solaris boxes where I had access to a competent sysadmin. I am at a classified site and cannot bring out electronic files with logs, configuration info, etc. to upload. Connecting the T5220 is the 1st box of many. This is my first exposure to HBA's, Fibre Channel, and SAN, so everything I know about it I have read in a manual or from a post somewhere. I understand the big picture and I have the SAN configured with 2 storage pools each with 1 volume in them on RAID5 virtual disks. I can see the LUN 0 on the T5220 server when I do a luxadm probe and when I do a format. I formatted one of the volumes successfully. Now I attempt to issue:
    newfs /dev/rdsk/device_name_from_output_of_luxadm_probe
    I get an immediate I/O error. I could be doing something totally naive or have a larger problem - this is where I get lost and the documentation becomes less detailed.
    What would be great is if anyone knows of a detailed writeup that would match what I'm doing or a good off-the-shelf textbook that covers all of this or anything close. I continue to search for something to bridge my lack of knowledge in this area. I am unclear about the initiators and targets beyond the fundamental definitions. I have used the CAM 6.5 software to define the initiators that it discovered. I have mapped the Sun host into a host group also. I do not know what role the Qlogic 5602 Fibre Channel switch plays with respect to initiators and targets or if it has any role at all. Is it just a "pass through" and the ports on the 5602 do not have to be included? Maybe I don't have the SAN volume available in read/write. I find bits and pieces in blogs and forums, but nothing that puts it all together. I also find that many of the notes on the web are not accurate.
    This all may appear simplistic to someone who works with it a lot and if you know of an obvious reference I should be using, a link or reply would be greatly appreciated as I continue to Google for information.

    Thanks for the reply. I had previously read the CAM 6.5 manual and have all the SAN configuration and mappings. Yesterday I was back at the site and was able to place a UFS filesystem on the exposed SAN LUN which was 0. I've not seen any reference to LUN 0 being a placeholder for the 2540 setup and when I assigned it, I allowed the CAM 6.5 software to choose "Next Available" LUN and it chose 0. LUN 31 on the 2540 is the "Access" LUN that is assigned automatically - perhaps it is taking the place of what you describe as the LUN 0 placeholder.
    I was able to put a new UFS filesystem on LUN 0 (newfs), mount it, and copy data to it. The disk naming convention that Solaris shows for the SAN disks is pretty wild and I usually have to reference a Solaris book on the standard scsi disk name formats. My question/confusion at the moment is that I have 3 Sun branded Qlogic HBA's in the Sun T5220 server - QLE2462 (dual port) with one port on two of the HBAs cabled to the Qlogic 5602 FC switch which is cabled to the A and B controller of the SAN 2540 - there are only 2 cables coming out of the 5220; the 3rd HBA (for future use) has no cables to it. Both ports show up as active and connected on the server down to the SAN and the CAM 6.5 software automatically identified both initiators (ports) on the Sun 5220 when I mapped them. I had previously mapped them to the Sun host, mapped the host to a host_group, virtual disks to volumes, volumes to....etc.; and was able to put data on the exposed volume named dev_vol1 which is a RAID5 virtual disk on the SAN.
    When I use the format command on Solaris, it shows two disks and I assumed this represented the two ports from the same host 5220. I was able to put a label on one of these disks (dev_vol1), format it, and put data on it as noted above. When I select the other disk in the format menu, it is not formatted, won't allow me to put a label on it (I/O error) and I can go no further from there. The CAM 6.5 docs stop after they get you through the mapping and getting a LUN exposed. I continue on the in a Solaris-centric mindset and try to do the normal label, format, newfs, mount routine and it works for the one "disk" that format finds but not for the other. The information from the format info on both the disks shows them as 1.09 TB and that is the only volume mapped right now from the SAN so I know it is the same SAN volume. It does not make sense that I would label it and format it again anyway, but is this what I am supposed to see - two disks (because of 2 ports?) and the ability to access it through one. I found out by trial an error that I could label, format, and access the one. I did not do it from knowledge or looking at the information presented....I just guessed through it.
    I have not "bound" the 2 or HBAs in any way and that is on my list as next because I want to do multipathing and failover - just starting to read that so I may be using the wrong language. But I am wondering before I go on to that, if I am leaving something undone in the configuration that is going to hamper my success in the multipathing - since I cannot do anything with the 2nd "disk" that has been exposed to Solaris from the SAN. I thought, after I labeled, formatted and put a filesystem on the one "disk" I can write to that the other "disk" that shows up would just be another path to the same data via a 2nd initiator. Just writing that does not sound right, but I am trying to convey my thoughts as to what I logically expected to see. Maybe the question should be why am I seeing that 2nd "disk" in a Solaris format listing at all? I have not rebooted any time during this process also and can easily do that and will today.

  • New to java, need a applet loop

    Hello, I am trying to create a simple double buffering tile drawing applet based on a two dimensional map array. I have it working fine, however I would like to create a main loop which will keep calling pain() until the escape key is pressed. Can someone please show me how I can do this? Would I need to call repaint() in paint() until escape is pressed? Here is my code.
    import java.awt.Graphics;
    import java.awt.Image;
    import javax.swing.ImageIcon;
    import javax.swing.JApplet;
    public class Tile_engine extends JApplet {
      private final int TILE_MAX = 4;
      private final int TILE_SIZE = 32;
      private final int APPLET_WIDTH = 640;
      private final int APPLET_HEIGHT = 480;
      private final int SKY = 0;
      private final int CLOUD_1 = 1;
      private final int CLOUD_2 = 2;
      private final int RED_BRICKS = 3;
      private final int MAP_ROWS = 15;
      private final int MAP_COLS = 20;
      private Image buffer = null;
      private Graphics bufferg;
      private Image[] tile = new Image[TILE_MAX];
      private final int map[][] =
        {{0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,0,0},
         {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
         {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
         {0,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
         {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
         {0,0,0,0,0,0,0,1,2,0,0,0,0,0,0,0,0,0,0,0},
         {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
         {0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,3,0,0,0,0},
         {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
         {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
         {0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,3,0,0,0,0},
         {0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0},
         {0,0,0,0,0,0,3,3,0,0,3,0,0,0,0,0,0,0,0,0},
         {3,3,3,3,3,3,3,3,0,0,3,3,3,3,3,3,3,3,3,3},
         {3,3,3,3,3,3,3,3,0,0,3,3,3,3,3,3,3,3,3,3}};
      public void init( ) {
        tile[SKY] = getImage(getDocumentBase(), "sky.png");
        tile[CLOUD_1] = getImage(getDocumentBase(), "cloud_1.png");
        tile[CLOUD_2] = getImage(getDocumentBase(), "cloud_2.png");
        tile[RED_BRICKS] = getImage(getDocumentBase(), "red_bricks.png");
        buffer = createImage(APPLET_WIDTH, APPLET_HEIGHT);
        bufferg = buffer.getGraphics();
      public void paint(Graphics g) {
        if(buffer != null) {
          int tile_id;
          for(int y=0;y<MAP_ROWS;y++) {
            for(int x=0;x<MAP_COLS;x++) {
              tile_id = map[y][x];
              bufferg.drawImage(tile[tile_id], x * TILE_SIZE, y * TILE_SIZE, this);
        g.drawImage(buffer, 0, 0, this);
    }

    Isn't %d an integer? You are passing a double. You need to use the correct formatting type for a double.
    When posting code, please use code tags (see button above posting box). It makes the code much easier to read.

  • New to Java -- Need to know if something is possible

    We have an application in which some complex calculations are being done in MatLab. In order to speed things up, we are converting it to C/C++. But there is also a GUI in the MatLab code. This is all to run on Windows.
    We will eventually (2 - 4 months from now, after it has been successfully converted and running) need to also port it to Linux. I am thinking that I would like to write the GUI portion in Java, so that it can be easily transferred from Windows to Linux.
    There is also an "embedded" portion running in C/C++. This must remain in C++ in because it is a real-time application where literally each microsecond will matter, Java will be too slow. In addition, some of the calculations will run on a parallel processing board, and the COTS libaries that support running on the card are C/C++ libraries.
    So, what I want is, to make a Java GUI that I can move from Windows to Linux, and in this GUI, each of the callbacks will then do nothing but call a C++ routine. I need the C++ routine to run completely independent of the Java Virtual Machine, to preserve the speed of the C++ library.
    My questions:
    If I write the GUI in Java, and have separate libraries/fucntions in C/C++ that are compiled for both Windows and Linux, can the Java GUI call these, and will they run as fast as they would in a normal C++ app? Or will it be slowed down by the JVM, and run at "interpreter speed"?
    How do you call the C++ code from inside a Java interpreter? Do we compile it all in a dll, and the dll is called from Java? Do we make a C++ library, and that can be called from the Java GUI? Or is there something else. This must have been done many times, does anybody have any suggestions or experience to get me going. I think I can glom together a simple Java GUI ( I produced some Java programs several years ago), and I can get the C++ libraries going, it is connecting them that I could use some guidance.
    Thanks.
    - Martin

    georgemc wrote:
    DrLaszloJamf wrote:
    georgemc wrote:
    DrLaszloJamf wrote:
    georgemc wrote:
    Ignore the myth that Java executes slowly because it's "interpreted". It's notHear, hear. Brian Goetz is a good source of Java myth debunking. Check out his columns:
    http://www.ibm.com/developerworks/views/java/libraryview.jsp?search_by=practice:
    Indeedie. Here's his article I like to trot out on occasions such as this
    http://java.sun.com/developer/technicalArticles/Interviews/goetz_qa.html
    I love to point out on some benchmarks, Java can be faster that C. "Faster than C? That's impossible!", people sputter, as if C were a physical constant, like the speed of light -- that's "c", folks!That's borne out of the misconception that any operation in Java is simply translated by the runtime into a similar operation in native code, and, were that the case, they'd probably have a point. It completely ignores runtime optimizationsAnd other things like Java's object allocation/GC being superior to malloc(), ...

  • New to java-need help for debugging

    hey there
    i just wanted my first program in java and here it is below with the error when i'm compiling it, i cant understand whats wrong:
    public class SquareArea {
    public static void main(String[] args); {
    float length;
    float width;
    float SquareArea;
    System.out.println ("Please enter length"+ length);
    System.out.println ("Please enter width"+ width);
    SquareArea= length*width;
    System.out.println ("The area of the square is" + SquareArea);
    The error is:C:\Documents and Settings\User\Desktop\SquareArea.java:5: missing method body, or declare abstract
    public static void main(String[] args); {
    ^
    1 error
    Tool completed with exit code 1

    Reading inputs from the command line is a bit complicated in java, here is how it is done:
    first add the line:
    import java.io.*;to the beginning of your program.
              float length;
              float width;
              float SquareArea;
              BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
              try
                   System.out.println ("Please enter length:");
                   String lengthStr = reader.readLine();
                   length = Float.parseFloat(lengthStr);
                   System.out.println ("Please enter width");
                   String widthStr = reader.readLine();
                   width = Float.parseFloat(widthStr);
                   SquareArea= length*width;
                   System.out.println ("The area of the square is" + SquareArea);
              catch (IOException ioe)
                   System.out.println("Error reading values.");
                   ioe.printStackTrace();
              }

  • Need guidness, New to Java

    Hi
    i am 100% new to java, plz help, i have good concepts of programing but i dont know any thing about java. so plz tell me how to start, what should i install n from where to download,
    i will be so thank full to u
    plz email me at [email protected]
    regards
    imran

    Hi! I am also new to java. I was suggested in this forum two days back to start at Java Tutorial, and I am really thankful to the person who suggested me the tutorial. Its a good starting point.
    http://java.sun.com/docs/books/tutorial/
    Hope you find it useful too.

  • Is there a downloadable book by Microsoft that explains Power Query?

    I am exploring options to better manage data for my company. I am looking for ways to effortlessly pull data into excel, possibly from SQL. I am good with VBA/excel, but I barely know anything about SQL or Power Query. Is there a book that explains--in terms
    a third grade idiot could understand--what Power Query is, what is can do, and when you would use it? Sorry for being such noob. 
    Thanks! 
    TAG

    Hello,
    This is a book.
    http://pragmaticworks.com/Portals/0/Whitepapers/BuildingSelf-ServiceWP_7.pdf
    Please examine the following tutorials.
    http://blogs.msdn.com/b/powerbi/archive/2014/07/08/getting-started-with-excel-and-power-bi-series.aspx
    http://www.rad.pasfu.com/index.php?/archives/161-Tutorial-Introduction-to-Power-Query.html
    http://www.databasejournal.com/sqletc/getting-started-with-microsoft-power-query-for-excel.html
    http://blogs.msdn.com/b/powerbi/archive/2013/07/07/getting-started-with-pq-and-pm.aspx
    Hope this helps.
    Regards,
    Alberto Morillo
    SQLCoffee.com

Maybe you are looking for

  • MSI GeForce 3 Ti200 video out freezes

    Hi! I was testing the composite video and s-video out connectors. In my properties for the GeForce card i can choose between s-video and composite video, but they aren't automatically discovered as connected when pressing that button. However when i

  • Subject in mail reciver

    Hey, I have an rfc-xi-mail scenario, i pass the rfc as a xml file in the mail, i need to pass in the subject of the mail message a filed from the rfc. Is that possible? could not find valid info about it in sdn. Edited by: Zevik Heinoch on Feb 8, 200

  • Headphone jack audio problem

    I have a confusing problem, any music played through my iphone headphone jack (ie a variety of headphones/adapers tried) sounds garbled unless the bitrate is 320kpbs. All music sounds fine when played through a powered amp, or through the internal sp

  • Clearing out user entered variables

    I have a BI 7.0 query that displays materials that have not moved in 'X' number of days. 1. My variable screen shows "No movements since <blank>". The user enters a number in this variable (ZV_NUM_DAYS)     e.g. 90. 2. I created a variable (not ready

  • Howto disable TopLink localized labels and messages?

    Hi, my windows regional settings are configured with Portuguese (Brazilian) as language and Brazil as location (since I am a Brazilian Portuguese speaking person who lives in Brazil). But the TopLink translations are POOR (almost stupid), it seems th