Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.

  • Apple
  • Android
  • Windows Phone
  • Android

To get the free app, enter your mobile phone number.

Java Language Specification (2nd Edition) 2nd Edition

4.8 out of 5 stars 17 customer reviews
ISBN-13: 978-0201310085
ISBN-10: 0201310082
Why is ISBN important?
This bar-code number lets you verify that you're getting exactly the right version or edition of a book. The 13-digit and 10-digit formats both work.
Scan an ISBN with your phone
Use the Amazon App to scan ISBNs and compare prices.
Have one to sell? Sell on Amazon
Buy used
Condition: Used - Good
In Stock. Sold by Yankee Clipper Books
Condition: Used: Good
Comment: Book shows a small amount of wear to cover and binding. Some pages show signs of use. Sail the Seas of Value.
Access codes and supplements are not guaranteed with used items.
22 Used from $0.01
+ $3.99 shipping
More Buying Choices
10 New from $19.95 22 Used from $0.01

There is a newer edition of this item:

Free Two-Day Shipping for College Students with Prime Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student

Windows 10 For Dummies Video Training
Get up to speed with Windows 10 with this video training course from For Dummies. Learn more.
click to open popover

Editorial Reviews

From the Inside Flap

The Java™ programming language was originally called Oak, and was designed for use in embedded consumer-electronic applications by James Gosling. After several years of experience with the language, and significant contributions by Ed Frank, Patrick Naughton, Jonathan Payne, and Chris Warth it was retargeted to the Internet, renamed, and substantially revised to be the language specified here. The final form of the language was defined by James Gosling, Bill Joy, Guy Steele, Richard Tuck, Frank Yellin, and Arthur van Hoff, with help from Graham Hamil ton, Tim Lindholm, and many other friends and colleagues.

The Java programming language is a general-purpose concurrent class-based object-oriented programming language, specifically designed to have as few implementation dependencies as possible. It allows application developers to write a program once and then be able to run it everywhere on the Internet. This book attempts a complete specification of the syntax and semantics of the language. We intend that the behavior of every language construct is specified here, so that all implementations will accept the same programs. Except for timing dependencies or other non-determinisms and given sufficient time and sufficient memory space, a program written in the Java programming language should com pute the same result on all machines and in all implementations.

We believe that the Java programming language is a mature language, ready for widespread use. Nevertheless, we expect some evolution of the language in the years to come. We intend to manage this evolution in a way that is completely compatible with existing applications. To do this, we intend to make relatively few new versions of the language, and to distinguish each new version with a different filename extension. Compilers and systems will be able to support the several ver sions simultannously, with complete compatibility.

Much research and experimentation with the Java platform is already under way. We encourage this work, and will continue to cooperate with external groups to explore improvements to the language and platform. For example, we have already received several interesting proposals for parameterized types. In techni cally difficult areas, near the state of the art, this kind of research collaboration is essential.

We acknowledge and thank the many people who have contributed to this book through their excellent feedback, assistance and encouragement: Particularly thorough, careful, and thoughtful reviews of drafts were provided by Tom Cargill, Peter Deutsch, Paul Hilfinger, Masayuki Ida, David Moon, Steven Muchnick, Charles L. Perkins, Chris Van Wyk, Steve Vinoski, Philip Wadler, Daniel Weinreb, and Kenneth Zadeck. We are very grateful for their extraordinary volunteer efforts.

We are also grateful for reviews, questions, comments, and suggestions from Stephen Adams, Bowen Alpern, Glenn Ammons, Leonid Arbuzov, Kim Bruce, Edwin Chan, David Chase, Pavel Curtis, Drew Dean, William Dietz, David Dill, Patrick Dussud, Ed Felten, John Giannandrea, John Gilmore, Charles Gust, Warren Harris, Lee Hasiuk, Mike Hendrickson, Mark Hill, Urs Hoelzle, Roger Hoover, Susan Flynn Hummel, Christopher Jang, Mick Jordan, Mukesh Kacker, Peter Kessler, James Larus, Derek Lieber, Bill McKeeman, Steve Naroff, Evi Nemeth, Robert O'Callahan, Dave Papay, Craig Partridge, Scott Pfeffer, Eric Raymond, Jim Roskind, Jim Russell, William Scherlis, Edith Schonberg, Anthony Scian, Matthew Self, Janice Shepherd, Kathy Stark, Barbara Steele, Rob Strom, William Waite, Greg Weeks, and Bob Wilson. (This list was generated semi-automatically from our E-mail records. We apologize if we have omitted anyone.)

The feedback from all these reviewers was invaluable to us in improving the definition of the language as well as the form of the presentation in this book. We thank them for their diligence. Any remaining errors in this book---we hope they are few---are our responsibility and not theirs.

We thank Francesca Freedman and Doug Kramer for assistance with matters of typography and layout. We thank Dan Mills of Adobe Systems Incorporated for assistance in exploring possible choices of typefaces.

Many of our colleagues at Sun Microsystems have helped us in one way or another. Lisa Friendly, our series editor, managed our relationship with Addison Wesley. Susan Stambaugh managed the distribution of many hundreds of copies of drafts to reviewers. We received valuable assistance and technical advice from Ben Adida, Ole Agesen, Ken Arnold, Rick Cattell, Asmus Freytag, Norm Hardy, Steve Heller, David Hough, Doug Kramer, Nancy Lee, Marianne Mueller, Akira Tanaka, Greg Tarsy, David Ungar, Jim Waldo, Ann Wollrath, Geoff Wyant, and Derek White. We thank Alan Baratz, David Bowen, Mike Clary, John Doerr, Jon Kannegaard, Eric Schmidt, Bob Sproull, Bert Sutherland, and Scott McNealy for leadership and encouragement.

The on-line Bartleby Library of Columbia University, at URL: cc.columbia/acis/bartleby/ was invaluable to us during the process of researching and verifying many of the quotations that are scattered throughout this book. Here is one example: They lard their lean books with the fat of others' works.
---Robert Burton (1576--1640) We are grateful to those who have toiled on Project Bartleby, for saving us a great deal of effort and reawakening our appreciation for the works of Walt Whitman.

We are thankful for the tools and services we had at our disposal in writing this book: telephones, overnight delivery, desktop workstations, laser printers, photocopiers, text formatting and page layout software, fonts, electronic mail, the World Wide Web, and, of course, the Internet. We live in three different states, scattered across a continent, but collaboration with each other and with our reviewers has seemed almost effortless. Kudos to the thousands of people who have worked over the years to make these excellent tools and services work quickly and reliably.

Mike Hendrickson, Katie Duffy, Simone Payment, and Rosa Aim"e GonzSumlez of Addison-Wesley were very helpful, encouraging, and patient during the long process of bringing this book to print. We also thank the copy editors. Rosemary Simpson worked hard, on a very tight schedule, to create the index. We got into the act at the last minute, however; blame us and not her for any jokes you may find hidden therein. Finally, we are grateful to our families and friends for their love and support during this last, crazy, year. In their book The C Programming Language, Brian Kernighan and Dennis Ritchie said that they felt that the C language "wears well as one's experience with it grows." If you like C, we think you will like the Java programming language.

We hope that it, too, wears well for you.

James Gosling--Cupertino, California
Bill Joy--Aspen, Colorado
Guy Steele--Chelmsford, Massachusetts
July, 1996


From the Back Cover

Written by the inventors of the technology, The Java™ Language Specification, Second Edition is the definitive technical reference for the Java™ programming language. If you want to know the precise meaning of the language's constructs, this is the source for you.

The book provides complete, accurate, and detailed coverage of the syntax and semantics of the Java programming language. It describes all aspects of the language, including the semantics of all types, statements, and expressions, as well as threads and binary compatibility.


The latest book club pick from Oprah
"The Underground Railroad" by Colson Whitehead is a magnificent novel chronicling a young slave's adventures as she makes a desperate bid for freedom in the antebellum South. See more

Product Details

  • Paperback: 544 pages
  • Publisher: Addison-Wesley Professional; 2 edition (June 15, 2000)
  • Language: English
  • ISBN-10: 0201310082
  • ISBN-13: 978-0201310085
  • Product Dimensions: 7.4 x 1 x 9.2 inches
  • Shipping Weight: 2 pounds
  • Average Customer Review: 4.8 out of 5 stars  See all reviews (17 customer reviews)
  • Amazon Best Sellers Rank: #2,957,652 in Books (See Top 100 in Books)

Customer Reviews

Top Customer Reviews

By Thomas Duff HALL OF FAMEVINE VOICE on October 17, 2005
Format: Paperback
Are you the type that has to know the "why" and "how" behind how a language behaves? Then this is the book you need... The Java Language Specification, Third Edition by James Gosling, Bill Joy, Guy Steele, Gilad Bracha. Provided you're buying it for the right reason, there's nothing close to it.

Contents: Introduction; Grammars; Lexical Structure; Types, Values, and Variables; Conversions and Promotions; Names; Packages; Classes; Interfaces; Arrays; Exceptions; Execution; Binary Compatibility; Blocks and Statements; Expressions; Definite Assignment; Threads and Locks; Syntax; Index

So why do I say "for the right reason"? Because if you pick it up expecting something else, you'll be highly disappointed. This is *not* a tutorial of the language, nor is it an easy-to-read conversation or discussion of Java. Instead, it's a computer engineering level coverage of how Java is structured and how it works, from the people who wrote it. As such, you're going to find information in here that you'll have a hard time getting elsewhere. You'll find out how the nitty-gritty of how things like classes and interfaces work, and how they *should* be structured. If you're just getting started in Java, you'll likely be over your head by the second chapter. The target of this type of writing would be people who are Java journeymen, and who have gotten to the point where they need to know some of the theory behind features and structure. You'll also need a book like this if you write development tools that target the Java environment. Armed with this book and a solid background in Java, you'll be able to produce software that behaves just as developers would expect.
Read more ›
Comment 14 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback
Never buy Internet/Programming books by the pound.
If you already know how programming languages and
compilers work (maybe you've written a compiler or
two..) and you want evaluate Java as a language or
you want to develop your Java programming "head" in
addition to your "C" "head" and your assembler "head",
this is the resource.
This is learning the beauty of the Java language by
drinking from the firehose, not slodging through the
mud. The book is mercifully concise, Emily Dickinson
would be proud.
Comment 17 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback Verified Purchase
This is it, the complete and authoritative definition of the Java programming language. This edition covers the Java language up to 1.5, so it gives a full description of generics and type parameters, boxing and unboxing, enums, annotation, and all the latest. If you develop Java language tools - debuggers, compilers, etc. - you simply must have this book. If you care about Java details that much, you must have the newest edition.

The typical programmer, someone who uses Java for application development, probably won't find much of interest in this book. This isn't a programmer's how-to manual. Nearly nothing describes how to use the language features. The code samples just illustrate language syntax and subtleties. There's nearly no discussion of the Java APIs, not even the java.lang.* packages or language-dependent reflection features. These are not flaws in this reference manual - this simply isn't a book meant to serve those needs.

Despite its 650+ pages, this really is a concise, precise definition of the Java 1.5 programming language. If you care about the internals of Java or about OO lnaguages in general, then this book is for you.

Comment 12 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
By A Customer on February 21, 2000
Format: Paperback
If you've been programming in Java for a while and want to get down to the nitty-gritty details of Java syntax and semantics, this is the book for you! It's also great preparation for the Java Programmer's Certification exam. But before you buy this book, you should know that the on-line version is available for download (free).. Also, be warned that this book covers Java 1.0 and that it's rumored that an updated edition that covers Java 2 will be published soon.
Comment 13 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback
This book is essential for learning Java, and should be read by anyone serious about learning the language. Pay special attention to the example programs, as they highlight special cases and subtleties that are not explained in other books, and often misconstrued by the authors of other books.
Bear in mind that this books is available for free from Sun Microsystems's web site. They offer it in either HTML or in PDF. So you can save some money.
Comment 7 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback
I have half a shelf full of Java books, and a folder full of online bookmarks, but after a half dozen frustrating searches through the others, I've learned to always look here first for a question about the core language. This book doesn't cover the non-core packages, and it doesn't cover the newer (Java 2) extensions, but it is indispensible for what it does cover. Plus, it has the most interesting index of any technical book I've seen.
Comment 7 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback
Just the book for the java hungry community. For those that are pressed for cash and cannot afford the book just yet you can visit the java dot sun website to download a pdf version of this book with minor cosmetic changes dealing with copyright. The integrity of the book is otherwise intact. The directory to look for is docs->books->jls. Cheers
Comment 4 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse

Most Recent Customer Reviews