13.07.2015 Views

Java™ Application Development on Linux - Dator

Java™ Application Development on Linux - Dator

Java™ Application Development on Linux - Dator

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

52Chapter 3An Experienced Programmer’s Introducti<strong>on</strong> to Java• Why the absence of templates in Java is not as crippling as a C++programmer might suppose.• How final is better than virtual and how interfaces are often betterthan multiple inheritance.This is going to be a whirlwind tour. Our book assumes that you alreadyknow programming in general, and have had some exposure to OO programming.We are going to distill into a single chapter material that comprises significantporti<strong>on</strong>s of other books. In particular, if there are c<strong>on</strong>cepts here thatyou are not already familiar with, look at Chapters 1–9 of Bruce Eckel’s w<strong>on</strong>derfulbook, Thinking in Java, 3rd ed., published by Prentice Hall PTR (ISBN0-131-00287-2). It is, genuinely, <strong>on</strong>e of the best books <strong>on</strong> the market forlearning the Java language and the design principles Java embodies.If you are somewhat new to programming, but technically quite adept(maybe a system administrator or database administrator with little formalprogramming background), you may want to supplement your reading with abook that, unlike Eckel’s, is targeted more toward the novice programmer. Welike Java Software Soluti<strong>on</strong>s: Foundati<strong>on</strong>s of Program Design, 3rd ed., by JohnLewis and William Loftus, Addis<strong>on</strong>-Wesley, 2003 (ISBN 0-201-78129-8).It will introduce the c<strong>on</strong>cepts behind the programming c<strong>on</strong>structs, whereaswe will assume that you know these c<strong>on</strong>cepts so we can focus <strong>on</strong>ly <strong>on</strong> theJava syntax.3.2FUNDAMENTAL LANGUAGE ELEMENTSBefore the object-oriented structures, Java (like C) has a small number offundamental statements and (again, like C and C++) some fundamental“n<strong>on</strong>object” data types. 11. The existence of these n<strong>on</strong>object data types is another thing that brings up criticism of theJava language. Since Java does not have C++’s operator overloading features, you cannot useobjects in standard algebraic expressi<strong>on</strong>s. I’m not sure if the inclusi<strong>on</strong> of scalar classes was motivatedby speed, or by the lack of operator overloading. Whatever the reas<strong>on</strong>, like any otherdesign compromise, it has both advantages and disadvantages, as we shall see throughoutthe book.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!