Part of The Java Series, The Java Programming Language is the definitive technical guide to the Java language. Ken Arnold and James Gosling explain Java's design motivations and tradeoffs, while presenting a wealth of practical examples. (Communications/Networking)
"synopsis" may belong to another edition of this title.
Ken Arnold of Sun Microsystems is one of the original architects of Jini technology and the original lead architect of JavaSpaces technology. He is a leading expert in object-oriented design, C, C++, and distributed computing. He also has a checkered past involving University of California-Berkeley, rogue, curses, and other things too embarrassing to mention.
James Gosling is a Fellow and Vice President at Sun Microsystems, the creator of the Java programming language, and one of the computer industry's most noted programmers. He is the 1996 recipient of Software Development's "Programming Excellence Award." He previously developed NeWS, Sun's network-extensible window system, and was a principal in the Andrew project at Carnegie-Mellon University, from which he holds a PhD in Computer Science. 0201634554AB05312002
Third Edition
now available! Coauthored by the creator of the Java technology, The Java Programming Language is the definitive resource for all serious Java programmers. This book will give you a solid foundation in Java programming language strategies and techniques. It features a concise introduction to the language and detailed descriptions of Java's commands, constructs, and libraries, and includes numerous real-world examples that show you how to exploit the language's power, portability, and flexibility.
You will find in-depth and progressively advanced coverage of classes and objects, interfaces, exception-handling, threads and multitasking, and packages. In addition, the book describes the Java core library packages, including I/O, standard utilities, language types, and system classes.
The book lets you in on the rationale behind Java's design, direct from the language's creator, as well as the tradeoffs involved in using specific features. With these insights, you will have the understanding you need to begin developing Java applications and applets. 0201634554B04062001
Beautiful buildings are more than scientific. They are true organisms, spiritually conceived; works of art, using the best technology by inspiration rather than the idiosyncrasies of mere taste or any averaging by the committee mind.
-Frank Lloyd Wright
The Java™ programming language (hereafter called simply "Java") has been warmly received by the world community of software developers and Internet content providers. Users of the Internet and World-Wide Web benefit from access to secure platform-independent applications that can come from anywhere on the Internet. Software developers creating applications in Java benefit by developing code only once, with no need to "port" their applications to every software and hardware platform.
For many, Java is known primarily as a tool to create applets for the World-Wide Web. "Applet" is the term Java uses for a mini-application that runs inside a web page. An applet can perform tasks and interact with the user on their browser page without using resources from the Web server after being downloaded. Some applets may, of course, interact with the server for their own purposes, but that's their business.
Java is indeed valuable for distributed network environments like the Web. However, Java goes well beyond this domain to provide a powerful general purpose programming language suitable for building a variety of applications that either do not depend on network features, or want them for different reasons. Java's ability to execute code on remote hosts in a secure manner is a critical requirement for many organizations.
Other groups use Java as a general-purpose programming language for projects where machine independence is less important. Java's ease of programming and safety features help produce debugged code quickly. Some common programming errors never occur because of features like garbage collection and type-safe references. Modern network-based and graphical user interface based applications that must attend to multiple tasks simultaneously are catered to by Java's support for multi-threading, while the mechanisms of exception handling ease the task of dealing with error conditions. While its built-in tools are powerful, Java the language is itself a simple language in which programmers can quickly become proficient.
Java is designed for maximum portability and is specifically designed to have as few implementation dependencies as possible. An int, for example, is a 32-bit signed two's-complement integer in all Java implementations, whatever the CPU architecture on which the Java program executes. Defining everything possible about the language and its runtime environment enables users to run compiled code anywhere and share code with anyone who has a Java environment.Java shares many language features common to most programming languages in use today. However, unlike C and C++, Java provides automatic storage management and exception handling, integrated with support for threads.
About This BookThis book teaches Java programming to people familiar with basic programming concepts. It explains Java without being formal or complete. This book is not an introduction to object-oriented programming, although some issues are covered to establish a common terminology.
Java should look familiar to C and C++ programmers, because Java was designed with C and C++ constructs where the languages are similar. Other books in this series, and much online documentation, focus on Java applets. This book covers applets at a high level as part of the Java library, but for other references, see the Bibliography.
Chapter 1-A Quick Tour of Java-gives a quick overview of Java. Programmers unfamiliar with object-oriented programming notions should read the quick tour, while programmers already familiar with object-oriented programming paradigms will find the quick tour a useful introduction to the object-oriented features of Java.
Chapters 2, 3, and 4 cover the object-oriented core features of Java, namely, class declarations that define components of a program, and objects manufactured according to class definitions. Chapter 2-Classes and Objects-describes the basis of the Java language. Chapter 3-Extending Classes-describes how an existing class can be extended, or subclassed, to create a new class with new data and behavior. Chapter 4-Interfaces-describes how to declare interface types that are abstract descriptions of behavior that provide maximum flexibility for class designers and implementers.
Chapters 5 and 6 cover standard language constructs common to most languages. Chapter 5-Tokens, Operators, and Expressions-describes the tokens of the language from which statements are constructed, how the tokens and operators are used to build expressions, and how expressions are evaluated. Chapter 6-Control Flow-describes how control statements direct the order of execution of statements.
Chapter 7-Exceptions-describes Java's powerful error-handling capabilities.
Chapter 8-Strings-describes the built-in language and run-time support for String objects.
Chapter 9-Threads-explains Java's implementation of multithreading. Many applications, such as graphical interface-based software, must attend to multiple tasks simultaneously. These tasks must cooperate to behave correctly, and threads meet the needs of cooperative multitasking.
Chapter 10-Packages-describes Java's mechanism for grouping collections of Java classes into their own separate packages.
Chapters 11 through 14 cover the main body of the Java class library packages. Chapter 11-The I/O Package-describes the Java input/output system, based on streams. Chapter 12-Standard Utilities-covers Java utility classes like vectors and hashtables. Chapter 13-Programming with Types-describes Java language types, both individual objects that describe each class and interface, and classes that wrap primitive data types like integers and floating point values into their own object types. Chapter 14-System Programming-leads you through the system classes that provide access to features of the underlying platform.
Appendix A describes Java support for native methods-a means to access code written in the "native" programming language of the underlying platform. Appendix B lists all the runtime exceptions and errors that the Java system itself can throw. Appendix C has tables of information that you may find useful for quick reference purposes.
Finally, a Bibliography lists works that may be interesting for further reading on object-orientation, programming with threads, and other topics.
Examples and DocumentationAll the code examples in the text have been compiled and run on the latest version of the language available at the time the book was written, which was the FCS version of Java release 1.0.1. Generally speaking, only Java 1.0.1 features are covered. We have also covered issues beyond writing programs that simply compile-part of learning a language is to learn to use it well. For this reason, we have tried to show principles of good programming style and design.
In a few places we refer to online documentation. Java development environments provide a way to automatically generate documentation (usually HTML documents) from a compiled class using the documentation comments. This documentation is normally viewed using a Web browser.
AcknowledgmentsMany people contributed technical help, excellent reviews, useful information, and book-writing advice.
Contributing Editor Henry McGilton of Trilithon Software played the role of "Chief Editorial Firefighter" to help make this book possible. Series Editor Lisa Friendly contributed dogged perseverance and support.
A veritable multitude of reviewers took time out of their otherwise busy lives to read, edit, advise, revise, and delete material, all in the name of making this a better book. Kevin Coyle performed one of the most detailed editorial reviews at all levels. Karen Bennet, Mike Burati, Patricia Giencke, Steve Gilliard, Bill Joy, Rosanna Lee, Jon Madison, Brian O'Neill, Sue Palmer, Stephen Perelgut, R. Anders Schneiderman, Susan Sim, Bob Sproull, Guy Steele, Arthur Van Hoff, Jim Waldo, Greg Wilson, and Ann Wollrath provided in-depth review. Geoff Arnold, Tom Cargill, Pat Finnegan, Mick Jordan, Doug Lea, Randall Murray, Roger Riggs, Jimmy Torres, and Frank Yellin contributed useful comments and technical information at critical junctures.
Alka Deshpande, Sharon Flank, Nassim Fotouhi, Betsy Halstead, Kee Hinckley, Dr. K. Kalyanasundaram, Patrick Martin, Paul Romagna, Susan Snyder, and Nicole Yankelovich collaborated to make possible the five words of non-ISO-Latin-1 text on page 96. Jim Arnold provided research help on the proper spelling, usage, and etymology of "smoog" and "moorge". Ed Mooney helped with the document preparation. Cookie Callahan, Robert Pierce, and Rita Tavilla provided the support necessary to keep this project going.
Thanks to Kim Polese for supplying us the capsule summary of why Java is important to computer users as well as programmers.
Support and advice were provided at critical moments by Susan Jones, Bob Sproull, Jim Waldo, and Ann Wollrath. And we thank our families, who besides their loving support, would at times drag us out to play when we should have been working, for which we are deeply grateful.
Any errors or shortcomings that remain in this book-despite all the best combined efforts of these myriads-are completely the responsibility of the authors.
0201634554P04062001
"About this title" may belong to another edition of this title.
FREE shipping within U.S.A.
Destination, rates & speedsSeller: SecondSale, Montgomery, IL, U.S.A.
Condition: Good. Item in very good condition! Textbooks may not include supplemental items i.e. CDs, access codes etc. Seller Inventory # 00072747992
Quantity: 3 available
Seller: SecondSale, Montgomery, IL, U.S.A.
Condition: Acceptable. Item in very good condition! Textbooks may not include supplemental items i.e. CDs, access codes etc. Seller Inventory # 00072786109
Quantity: 1 available
Seller: SecondSale, Montgomery, IL, U.S.A.
Condition: Very Good. Item in very good condition! Textbooks may not include supplemental items i.e. CDs, access codes etc. Seller Inventory # 00072725233
Quantity: 1 available
Seller: Wonder Book, Frederick, MD, U.S.A.
Condition: Good. Good condition. A copy that has been read but remains intact. May contain markings such as bookplates, stamps, limited notes and highlighting, or a few light stains. Seller Inventory # C02N-00460
Quantity: 1 available
Seller: ThriftBooks-Dallas, Dallas, TX, U.S.A.
Paperback. Condition: Very Good. No Jacket. May have limited writing in cover pages. Pages are unmarked. ~ ThriftBooks: Read More, Spend Less 1.3. Seller Inventory # G0201634554I4N00
Quantity: 1 available
Seller: ThriftBooks-Phoenix, Phoenix, AZ, U.S.A.
Paperback. Condition: Very Good. No Jacket. May have limited writing in cover pages. Pages are unmarked. ~ ThriftBooks: Read More, Spend Less 1.3. Seller Inventory # G0201634554I4N00
Quantity: 1 available
Seller: ThriftBooks-Atlanta, AUSTELL, GA, U.S.A.
Paperback. Condition: Very Good. No Jacket. May have limited writing in cover pages. Pages are unmarked. ~ ThriftBooks: Read More, Spend Less 1.3. Seller Inventory # G0201634554I4N00
Quantity: 1 available
Seller: ThriftBooks-Reno, Reno, NV, U.S.A.
Paperback. Condition: Very Good. No Jacket. May have limited writing in cover pages. Pages are unmarked. ~ ThriftBooks: Read More, Spend Less 1.3. Seller Inventory # G0201634554I4N00
Quantity: 1 available
Seller: ThriftBooks-Dallas, Dallas, TX, U.S.A.
Paperback. Condition: As New. No Jacket. Pages are clean and are not marred by notes or folds of any kind. ~ ThriftBooks: Read More, Spend Less 1.3. Seller Inventory # G0201634554I2N00
Quantity: 1 available
Seller: Better World Books, Mishawaka, IN, U.S.A.
Condition: Very Good. Used book that is in excellent condition. May show signs of wear or have minor defects. Seller Inventory # 39078557-6
Quantity: 1 available