50
Used, New, and Out of Print Books - We Buy and Sell - Powell's Books
Cart |
|  my account  |  wish list  |  help   |  800-878-7323
Hello, | Login
MENU
  • Browse
    • New Arrivals
    • Bestsellers
    • Featured Preorders
    • Award Winners
    • Audio Books
    • See All Subjects
  • Used
  • Staff Picks
    • Staff Picks
    • Picks of the Month
    • Bookseller Displays
    • 50 Books for 50 Years
    • 25 Best 21st Century Sci-Fi & Fantasy
    • 25 PNW Books to Read Before You Die
    • 25 Books From the 21st Century
    • 25 Memoirs to Read Before You Die
    • 25 Global Books to Read Before You Die
    • 25 Women to Read Before You Die
    • 25 Books to Read Before You Die
  • Gifts
    • Gift Cards & eGift Cards
    • Powell's Souvenirs
    • Journals and Notebooks
    • socks
    • Games
  • Sell Books
  • Blog
  • Events
  • Find A Store

Don't Miss

  • Spring Sale
  • Scientifically Proven Sale
  • Powell's Author Events
  • Oregon Battle of the Books
  • Audio Books

Visit Our Stores


Jinwoo Chong: Clock In: Jinwoo Chong’s Playlist for 'Flux' (0 comment)
I had my first inklings of the novel that eventually became Flux about a year after I was laid off from my first job after college, the result of a corporate takeover of my company that eliminated my entire department. While a tough hurdle to overcome at twenty-one years old, I learned a lot about self-sufficiency....

Read More»

  • Esther Yi: The Writers That Haunt Me: Esther Yi’s Bookshelf for 'Y/N' (0 comment)
  • Kelsey Ford: 10 Books That Celebrate Women’s Rights and Women’s Wrongs (0 comment)

{1}
##LOC[OK]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]## ##LOC[Cancel]##

Java Language Specification Java SE 7 Edition 4th Edition

by James Gosling, Bill Joy, Guy Steele
Java Language Specification Java SE 7 Edition 4th Edition

  • Comment on this title
  • Synopses & Reviews

ISBN13: 9780133260229
ISBN10: 0133260224
Condition: Standard


All Product Details

View Larger ImageView Larger Images
Ships free on qualified orders.
Add to Cart
0.00
List Price:0.00
Trade Paperback
Ships in 1 to 3 days
Add to Wishlist

Synopses & Reviews

Publisher Comments

Written by Java's inventors and current stewards, this is the definitive Java SE 7 language reference. It meticulously explains Java SE 7's syntax, semantics, and constructs, thoroughly defining the language's current state and evolution. A "software-engineering-level" discussion of how the newest version of Java is organized and how it works, it reflects all recent changes to the language, demonstrating them through dozens of example programs -- most of them in "ready to execute" form. The Java Language Specification, Java SE 7 Edition includes a full chapter describing the semantics of threads and locks, and specifying a memory model for high-performance shared memory multiprocessor implementations. It covers all of the practical new features specified by JSR 334, Small Enhancements to the Java Programming

Synopsis

Written by the inventors of the technology, The Java ® Language Specification, Java SE 7 Edition, is the definitive technical reference for the Java programming language. The book provides complete, accurate, and detailed coverage of the Java programming language. It fully describes the new features added in Java SE 7, including the try-with-resources statement, multi-catch, precise rethrow, “diamond” syntax, strings-in-switch, and binary literals. The book also includes many explanatory notes, and carefully distinguishes the formal rules of the language from the practical behavior of compilers.

Synopsis

Written by the inventors of the technology, The Java ® Language Specification, Java SE 7 Edition, is the definitive technical reference for the Java programming language. The book provides complete, accurate, and detailed coverage of the Java programming language. It fully describes the new features added in Java SE 7, including the try-with-resources statement, multi-catch, precise rethrow, “diamond” syntax, strings-in-switch, and binary literals. The book also includes many explanatory notes, and carefully distinguishes the formal rules of the language from the practical behavior of compilers.

About the Author

JAMES GOSLING is the creator of the Java programming language and a

former Fellow at Sun Microsystems. He implemented the original Java

compiler and virtual machine, contributed to the Real-Time Specification

for Java, and was a researcher at Sun Labs, where his primary interest

was software development tools. He developed NeWS, Sun's

network-extensible window system, and was a principal in the Andrew

project at Carnegie Mellon University, where he earned a Ph.D. in

Computer Science. In 2011, he became chief software architect at Liquid Robotics,

where he writes software for the Wave Glider™ an autonomous

ocean-going robot.

 

BILL JOY is a cofounder of Sun Microsystems and was the principal

architect of the Berkeley version of UNIX®, for which he received the

lifetime achievement award from the USENIX Association in 1993. Joy has

had a central role in shaping the Java programming language. He joined

KPCB as a Greentech Partner in January 2005.

 

GUY L. STEELE JR. is a Software Architect at Oracle Labs, where he is

responsible for research in language design and implementation

strategies, parallel algorithms, and computer arithmetic. He is well

known as the cocreator (with Gerald Jay Sussman) of the Scheme

programming language and for his reference books for the C programming

language (with Samuel Harbison) and the Common Lisp programming

language. Steele is an ACM Fellow, an IEEE Fellow, a fellow of the

American Academy of Arts and Sciences, and a member of the National

Academy of Engineering of the United States of America. He has received

the ACM George E. Forsythe Award, the ACM Grace Murray Hopper Award, the

ACM SIGPLAN Programming Languages Achievement Award, the IEEE Harry H.

Goode Award, and the Dr. Dobb’s Journal Excellence in Programming Award.

 

GILAD BRACHA is the creator of the Newspeak programming language and a

former Distinguished Engineer at Sun Microsystems. Prior to Sun, he

worked on Strongtalk, the Animorphic Smalltalk System. He holds a B.Sc.

in Mathematics and Computer Science from Ben Gurion University in Israel

and a Ph.D. in Computer Science from the University of Utah.

  ALEX BUCKLEY is the Specification Lead for the Java Language and the Java Virtual Machine at Oracle. He contributes to many initiatives concerning the modularity and productivity of the Java SE platform, and collaborates widely with experts in industry and academia. He holds a

Ph.D. in Computing from Imperial College London.

 


Table of Contents

Preface to the Java SE 7 Edition xvii

Preface to the Third Edition xix

Preface to the Second Edition xxiii

Preface to the First Edition xxv

 

Chapter 1: Introduction 1

1.1 Organization of the Specification 2

1.2 Example Programs 5

1.3 Notation 6

1.4 Relationship to Predefined Classes and Interfaces 6

1.5 References 7

 

Chapter 2: Grammars 9

2.1 Context-Free Grammars 9

2.2 The Lexical Grammar 9

2.3 The Syntactic Grammar 10

2.4 Grammar Notation 10

 

Chapter 3: Lexical Structure 15

3.1 Unicode 15

3.2 Lexical Translations 16

3.3 Unicode Escapes 17

3.4 Line Terminators 18

3.5 Input Elements and Tokens 19

3.6 White Space 21

3.7 Comments 21

3.8 Identifiers 23

3.9 Keywords 24

3.10 Literals 25

3.11 Separators 40

3.12 Operators 40

 

Chapter 4: Types, Values, and Variables 41

4.1 The Kinds of Types and Values 41

4.2 Primitive Types and Values 42

4.3 Reference Types and Values 52

4.4 Type Variables 58

4.5 Parameterized Types 60

4.6 Type Erasure 65

4.7 Reifiable Types 66

4.8 Raw Types 67

4.9 Intersection Types 71

4.10 Subtyping

4.11 Where Types Are Used 74

4.12 Variables 75

 

Chapter 5: Conversions and Promotions 85

5.1 Kinds of Conversion 88

5.2 Assignment Conversion 101

5.3 Method Invocation Conversion 106

5.4 String Conversion 108

5.5 Casting Conversion 108

 5.6 Numeric Promotions 117

 

 

Chapter 6: Names 121

6.1 Declarations 122

6.2 Names and Identifiers 127

6.3 Scope of a Declaration 130

6.4 Shadowing and Obscuring 133

6.5 Determining the Meaning of a Name 140

6.6 Access Control 152

6.7 Fully Qualified Names and Canonical Names 159

 

Chapter 7: Packages 163

7.1 Package Members 163

7.2 Host Support for Packages 165

7.3 Compilation Units 167

7.4 Package Declarations 168

7.5 Import Declarations 170

7.6 Top Level Type Declarations 175

 

Chapter 8: Classes 179

8.1 Class Declarations 181

8.2 Class Members 196

8.3 Field Declarations 201

8.4 Method Declarations 215

8.5 Member Type Declarations 242

8.6 Instance Initializers 243

8.7 Static Initializers 243

8.8 Constructor Declarations 244

8.9 Enums 253

 

Chapter 9: Interfaces 263

9.1 Interface Declarations 264

9.2 Interface Members 268

9.3 Field (Constant) Declarations 269

9.4 Abstract Method Declarations 271

9.5 Member Type Declarations 274

9.6 Annotation Types 275

9.7 Annotations 285

 

Chapter 10: Arrays 291

10.1 Array Types 292

10.2 Array Variables 292

10.3 Array Creation 294

10.4 Array Access 294

10.5 Array Store Exception 295

10.6 Array Initializers 297

10.7 Array Members 298

10.8 Class Objects for Arrays 300

10.9 An Array of Characters is Not a String 301

 

Chapter 11: Exceptions 303

11.1 The Kinds and Causes of Exceptions 304

11.2 Compile-Time Checking of Exceptions 306

11.3 Run-Time Handling of an Exception 311

 

Chapter 12: Execution 315

12.1 Java Virtual Machine Startup 315

12.2 Loading of Classes and Interfaces 318

12.3 Linking of Classes and Interfaces 320

12.4 Initialization of Classes and Interfaces 322

12.5 Creation of New Class Instances 327

12.6 Finalization of Class Instances 331

12.7 Unloading of Classes and Interfaces 335

12.8 Program Exit 336

 

Chapter 13: Binary Compatibility 337

13.1 The Form of a Binary 338

13.2 What Binary Compatibility Is and Is Not 343

13.3 Evolution of Packages 344

13.4 Evolution of Classes 344

13.5 Evolution of Interfaces 361

 

Chapter 14: Blocks and Statements 365

14.1 Normal and Abrupt Completion of Statements 365

14.2 Blocks 367

14.3 Local Class Declarations 367

14.4 Local Variable Declaration Statements 369

14.5 Statements 371

14.6 The Empty Statement 373

14.7 Labeled Statements 373

14.8 Expression Statements 374

14.9 The if Statement 375

14.10 The assert Statement 376

14.11 The switch Statement 379

14.12 The while Statement 383

14.13 The do Statement 385

14.14 The for Statement 387

14.15 The break Statement 392

14.16 The continue Statement 394

14.17 The return Statement 396

14.18 The throw Statement 397

14.19 The synchronized Statement 399

14.20 The try statement 400

14.21 Unreachable Statements 411

 

Chapter 15: Expressions 417

15.1 Evaluation, Denotation, and Result 417

15.2 Variables as Values 418

15.3 Type of an Expression 418

15.4 FP-strict Expressions 419

15.5 Expressions and Run-Time Checks 419

15.6 Normal and Abrupt Completion of Evaluation 421

15.7 Evaluation Order 423

15.8 Primary Expressions 428

15.9 Class Instance Creation Expressions 432

15.10 Array Creation Expressions 442

15.11 Field Access Expressions 446

15.12 Method Invocation Expressions 451

15.13 Array Access Expressions 490

15.14 Postfix Expressions 493

15.15 Unary Operators 495

15.16 Cast Expressions 499

15.17 Multiplicative Operators 500

15.18 Additive Operators 506

15.19 Shift Operators 511

15.20 Relational Operators 512

15.21 Equality Operators 514

15.22 Bitwise and Logical Operators 517

15.23 Conditional-And Operator && 519

15.24 Conditional-Or Operator 520

15.25 Conditional Operator ? : 521

15.26 Assignment Operators 523

15.27 Expression 535

15.28 Constant Expressions 536

 

Chapter 16: Definite Assignment 539

16.1 Definite Assignment and Expressions 545

16.2 Definite Assignment and Statements 549

16.3 Definite Assignment and Parameters 558

16.4 Definite Assignment and Array Initializers 558

16.5 Definite Assignment and Enum Constants 559

16.6 Definite Assignment and Anonymous Classes 559

16.7 Definite Assignment and Member Types 559

16.8 Definite Assignment and Static Initializers 560

16.9 Definite Assignment, Constructors, and Instance Initializers 560

 

Chapter 17:  Threads and Locks 563

17.1 Synchronization 564

17.2 Wait Sets and Notification 564

17.3 Sleep and Yield 568

17.4 Memory Model 569

17.5 final Field Semantics 584

17.6 Word Tearing 589

17.7 Non-atomic Treatment of double and long 590

 

Chapter 18: Syntax 591

 

Index 607

A Limited License Grant 641

 


What Our Readers Are Saying

Be the first to share your thoughts on this title!




Product Details

ISBN:
9780133260229
Binding:
Trade Paperback
Publication date:
01/01/2013
Publisher:
ADDISON-WESLEY
Edition:
4ED
Pages:
672
Height:
9.01 in.
Width:
7 in.
Thickness:
1.465 in.
Copyright Year:
2013
Author:
Alex Buckley
Author:
Guy Steele
Author:
Guy L., Jr. Steele
Author:
Gilad Bracha
Author:
Bill Joy
Author:
James Gosling
Author:
James And Bill Joy, Guy Steele, Gilad Bracha, Alex Buckley. Gosling
Author:
Gosling
Subject:
Computer Languages-Java

Ships free on qualified orders.
Add to Cart
0.00
List Price:0.00
Trade Paperback
Ships in 1 to 3 days
Add to Wishlist
Used Book Alert for book Receive an email when this ISBN is available used.
{1}
##LOC[OK]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]## ##LOC[Cancel]##
  • Twitter
  • Facebook
  • Pinterest
  • Instagram

  • Help
  • Guarantee
  • My Account
  • Careers
  • About Us
  • Security
  • Wish List
  • Partners
  • Contact Us
  • Shipping
  • Transparency ACT MRF
  • Sitemap
  • © 2023 POWELLS.COM Terms

{1}
##LOC[OK]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]##
{1}
##LOC[OK]## ##LOC[Cancel]##
{1}
##LOC[OK]## ##LOC[Cancel]##