1. Trang chủ
  2. » Công Nghệ Thông Tin

java 8 pocket guide

241 3,3K 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Java 8 Pocket Guide
Tác giả Robert Liguori, Patricia Liguori
Trường học O'Reilly Media, Inc.
Chuyên ngành Computer Science
Thể loại sách hướng dẫn
Năm xuất bản 2014
Thành phố Sebastopol
Định dạng
Số trang 241
Dung lượng 8,25 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Keywords 10Identifiers 11 Separators 12 Operators 12 Literals 14 Escape Sequences 17 Unicode Currency Symbols 18 Chapter 3: Fundamental Types 21 Primitive Types 21 Literals for Primitive

Trang 3

Robert Liguori and Patricia Liguori

Java 8 Pocket Guide

Trang 4

Java 8 Pocket Guide

by Robert Liguori and Patricia Liguori

Copyright © 2014 Gliesian, LLC All rights reserved.

Printed in the United States of America.

Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebasto‐ pol, CA 95472.

O’Reilly books may be purchased for educational, business, or sales promotional

use Online editions are also available for most titles (http://my.safaribookson line.com) For more information, contact our corporate/institutional sales de‐

partment: 800-998-9938 or corporate@oreilly.com.

Editors: Mike Loukides and Meghan Blanchette

Production Editor: Melanie Yarbrough

Proofreader: Gillian McGarvey

Indexer: WordCo Indexing Services

Cover Designer: Karen Montgomery

Interior Designer: David Futato

Illustrator: Rebecca Demarest

April 2014: First Edition

Revision History for the First Edition:

2014-04-07: First release

See http://oreilly.com/catalog/errata.csp?isbn=9781491900864 for release de‐ tails.

Nutshell Handbook, the Nutshell Handbook logo, and the O’Reilly logo are

registered trademarks of O’Reilly Media, Inc Java 8 Pocket Guide, the cover

image of a Javan tiger, and related trade dress are trademarks of O’Reilly Media, Inc.

Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks Where those designations appear in this book, and O’Reilly Media, Inc was aware of a trademark claim, the designations have been printed in caps or initial caps.

While every precaution has been taken in the preparation of this book, the publisher and authors assume no responsibility for errors or omissions, or for damages resulting from the use of the information contained herein ISBN: 978-1-491-90086-4

[M]

www.it-ebooks.info

Trang 5

This book is dedicated to our beautiful, awesome-tastic daughter,

Ashleigh.

Trang 7

Table of Contents

Preface xi

Part I Language Chapter 1: Naming Conventions 3

Class Names 3

Interface Names 3

Method Names 4

Instance and Static Variable Names 4

Parameter and Local Variable Names 4

Generic Type Parameter Names 4

Constant Names 5

Enumeration Names 5

Package Names 5

Annotation Names 6

Acronyms 6

Chapter 2: Lexical Elements 7

Unicode and ASCII 7

Comments 9

v

Trang 8

Keywords 10

Identifiers 11

Separators 12

Operators 12

Literals 14

Escape Sequences 17

Unicode Currency Symbols 18

Chapter 3: Fundamental Types 21

Primitive Types 21

Literals for Primitive Types 22

Floating-Point Entities 23

Numeric Promotion of Primitive Types 26

Wrapper Classes 27

Autoboxing and Unboxing 28

Chapter 4: Reference Types 31

Comparing Reference Types to Primitive Types 32

Default Values 32

Conversion of Reference Types 34

Converting Between Primitives and Reference Types 35

Passing Reference Types into Methods 35

Comparing Reference Types 37

Copying Reference Types 40

Memory Allocation and Garbage Collection of Reference Types 41

Chapter 5: Object-Oriented Programming 43

Classes and Objects 43

Variable-Length Argument Lists 49

Abstract Classes and Abstract Methods 51

vi | Table of Contents

www.it-ebooks.info

Trang 9

Static Data Members, Static Methods, Static Constants, and

Static Initializers 52

Interfaces 53

Enumerations 54

Annotation Types 55

Functional Interfaces 57

Chapter 6: Statements and Blocks 59

Expression Statements 59

Empty Statement 60

Blocks 60

Conditional Statements 60

Iteration Statements 62

Transfer of Control 64

Synchronized Statement 66

Assert Statement 66

Exception Handling Statements 67

Chapter 7: Exception Handling 69

The Exception Hierarchy 69

Checked/Unchecked Exceptions and Errors 70

Common Checked/Unchecked Exceptions and Errors 71

Exception Handling Keywords 74

The Exception Handling Process 78

Defining Your Own Exception Class 79

Printing Information About Exceptions 80

Chapter 8: Java Modifiers 83

Access Modifiers 84

Table of Contents | vii

Trang 10

Other (Nonaccess) Modifiers 85

Part II Platform Chapter 9: Java Platform, Standard Edition 89

Common Java SE API Libraries 89

Chapter 10: Development Basics 103

Java Runtime Environment 103

Java Development Kit 103

Java Program Structure 104

Command-Line Tools 106

Classpath 113

Chapter 11: Memory Management 115

Garbage Collectors 115

Memory Management Tools 117

Command-Line Options 118

Resizing the JVM Heap 121

Metaspace 121

Interfacing with the GC 122

Chapter 12: Basic Input and Output 125

Standard Streams in, out, and err 125

Class Hierarchy for Basic Input and Output 126

File Reading and Writing 127

Socket Reading and Writing 129

Serialization 131

Zipping and Unzipping Files 132

Chapter 13: New I/O API (NIO.2) 135

The Path Interface 135

viii | Table of Contents

www.it-ebooks.info

Trang 11

The Files Class 136

Additional Features 137

Chapter 14: Concurrency 139

Creating Threads 139

Thread States 140

Thread Priorities 141

Common Methods 141

Synchronization 143

Concurrent Utilities 144

Chapter 15: Java Collections Framework 149

The Collection Interface 149

Implementations 150

Collection Framework Methods 150

Collections Class Algorithms 151

Algorithm Efficiencies 152

Comparator Functional Interface 153

Chapter 16: Generics Framework 157

Generic Classes and Interfaces 157

Constructors with Generics 158

Substitution Principle 159

Type Parameters, Wildcards, and Bounds 160

The Get and Put Principle 160

Generic Specialization 161

Generic Methods in Raw Types 162

Chapter 17: The Java Scripting API 165

Scripting Languages 165

Script Engine Implementations 165

Setting Up Scripting Languages and Engines 168

Table of Contents | ix

Trang 12

Chapter 18: Date and Time API 171

Legacy Interoperability 172

Regional Calendars 172

ISO Calendar 173

Chapter 19: Lambda Expressions 179

λEs Basics 179

Specific Purpose Functional Interfaces 182

General Purpose Functional Interfaces 182

Resources for λEs 184

Part III Appendixes A Fluent APIs 189

B Third-Party Tools 191

C UML Basics 201

Index 211

x | Table of Contents

www.it-ebooks.info

Trang 13

Designed to be your companion, this Pocket Guide provides a

quick reference to the standard features of the Java programminglanguage and its platform

This Pocket Guide provides you with the information you will

need while developing or debugging your Java programs, includ‐ing helpful programming examples, tables, figures, and lists

It also contains supplemental information about things such asthe Java Scripting API, third-party tools, and the basics of theUnified Modeling Language (UML)

The material in this book also provides support in preparing forthe Oracle Certified Associate Java SE 7 Programmer I Exam Ifyou are considering pursuing this Java certification, you may also

wish to consider acquiring OCA Java SE 7 Programmer I Study

(McGraw-Hill Osborne Media, 2012)

Java coverage in this book is representative through Java SE 8.However, the primary differences between this Java 8 PocketGuide and the prior Java 7 Pocket Guide is the addition of the

Date and Time API and the Lambda Expressions chapters.

xi

Trang 14

Book Structure

This book is broken into three parts: Part I, Part II, and Part III.Chapters 1 through 8 detail the Java programming language asderived from the Java Language Specification (JLS) Chapters 9through 19 detail Java platform components and related topics.The appendixes cover third-party tools and the Unified ModelingLanguage

Conventions Used in This Book

The following typographical conventions are used in this book:

Constant width bold

Shows commands or other text that should be typed literally

by the user

Constant width italic

Shows text that should be replaced with user-supplied values

or by values determined by context

TIP

This element signifies a tip, suggestion, or general note

xii | Preface

www.it-ebooks.info

Trang 15

This element indicates a warning or caution

Safari® Books Online

NOTE

Safari Books Online is an on-demand digital library thatdelivers expert content in both book and video form fromthe world’s leading authors in technology and business

Technology professionals, software developers, web designers,and business and creative professionals use Safari Books Online

as their primary resource for research, problem solving, learning,and certification training

Safari Books Online offers a range of product mixes and pricingprograms for organizations, government agencies, and individ‐uals Subscribers have access to thousands of books, training vid‐eos, and prepublication manuscripts in one fully searchable da‐tabase from publishers like O’Reilly Media, Prentice Hall Profes‐sional, Addison-Wesley Professional, Microsoft Press, Sams,Que, Peachpit Press, Focal Press, Cisco Press, John Wiley & Sons,Syngress, Morgan Kaufmann, IBM Redbooks, Packt, AdobePress, FT Press, Apress, Manning, New Riders, McGraw-Hill,Jones & Bartlett, Course Technology, and dozens more For moreinformation about Safari Books Online, please visit us online

Preface | xiii

Trang 16

How to Contact Us

Please address comments and questions concerning this book tothe publisher:

O’Reilly Media, Inc

1005 Gravenstein Highway North

To comment or ask technical questions about this book, sendemail to bookquestions@oreilly.com

For more information about our books, courses, conferences,and news, see our website at http://www.oreilly.com

Find us on Facebook: http://facebook.com/oreilly

Follow us on Twitter: http://twitter.com/oreillymedia

Watch us on YouTube: http://www.youtube.com/oreillymedia

Authors

Robert James Liguori is the principal for Gliesian LLC He is anOracle Certified Expert, supporting several Java-based air trafficmanagement and safety applications Patricia Liguori is a multi-disciplinary information systems engineer for The MITRE Cor‐poration She has been developing real-time air traffic manage‐ment systems and aviation-related information systems since1994

xiv | Preface

www.it-ebooks.info

Trang 17

We extend a special thank you to our editor, Meghan Blanchette.Her oversight and collaboration has been invaluable to this en‐deavor

Further appreciation goes out to Michael Loukides (technical

editor of the initial Java Pocket Guide), our technical reviewer

Ryan Cuprak, as well as the various members of the O’Reilly team,our family, and our friends

We would also like to thank again all of those who participatedwith the original Java Pocket Guide and the Java 7 Pocket Guide.Most importantly, we thank you for using the book as a referenceguide and for loving Java Feel free to post a picture of yourselfwith the book on Tumblr It would be nice to see who is using thebook and where it has been (even on vacations) :)

Preface | xv

Trang 19

PART I

Language

Trang 21

CHAPTER 1

Naming Conventions

Naming conventions are used to make Java programs more read‐able It is important to use meaningful and unambiguous namescomprised of Java letters

Class Names

Class names should be nouns, as they represent “things” or “ob‐jects.” They should be mixed case (camel case) with only the firstletter of each word capitalized, as in the following:

public class Fish { }

Interface Names

Interface names should be adjectives They should end with “able”

or “ible” whenever the interface provides a capability; otherwise,they should be nouns Interface names follow the same capitali‐zation convention as class names:

public interface Serializable { }

public interface SystemPanel { }

3

Trang 22

Method Names

Method names should contain a verb, as they are used to make

an object take action They should be mixed case, beginning with

a lowercase letter, and the first letter of each subsequent wordshould be capitalized Adjectives and nouns may be included inmethod names:

public void locate() { } // verb

public String getWayPoint() { } // verb and noun

Instance and Static Variable Names

Instance and static variable names should be nouns and shouldfollow the same capitalization convention as method names:

private String wayPoint;

Parameter and Local Variable Names

Parameter and local variable names should be descriptive low‐ercase single words, acronyms, or abbreviations If multiplewords are necessary, they should follow the same capitalizationconvention as method names:

public void printHotSpots(ArrayList spotList) { int counter ;

for String hotSpot spotList) {

System.out.println("Hot Spot #"

+ ++counter ": " hotSpot);

}

}

Temporary variable names may be single letters such as i, j, k,

m, and n for integers and c, d, and e for characters

Generic Type Parameter Names

Generic type parameter names should be uppercase single letters.The letter T for type is typically recommended

4 | Chapter 1: Naming Conventions

www.it-ebooks.info

Trang 23

The Collections Framework makes extensive use of generics E isused for collection elements, S is used for service loaders, and Kand V are used for map keys and values:

public interface Map K V

V put( key, V value);

enum Battery CRITICAL, LOW, CHARGED, FULL}

Package Names

Package names should be unique and consist of lowercase letters.Underscores may be used if necessary:

package com.oreilly.fish_finder;

Publicly available packages should be the reversed Internet do‐main name of the organization, beginning with a single-word

top-level domain name (e.g., com, net, org, or edu), followed by

the name of the organization and the project or division (Internalpackages are typically named according to the project.)Package names that begin with java and javax are restricted andcan be used only to provide conforming implementations to theJava class libraries

Constant Names | 5

Trang 24

Annotation Names

Annotation names have been presented several ways in the Java

SE API for predefined annotation types, [adjective|verb][noun]:

@Documented

@Retention(RetentionPolicy.RUNTIME)

@Target(ElementType.TYPE)

public @interface FunctionalInterface {}

Acronyms

When using acronyms in names, only the first letter of the acro‐nym should be uppercase and only when uppercase is appropri‐ate:

public String getGpsVersion() { }

6 | Chapter 1: Naming Conventions

www.it-ebooks.info

Trang 25

CHAPTER 2

Lexical Elements

Java source code consists of words or symbols called lexical ele‐ments or tokens Java lexical elements include line terminators,whitespace, comments, keywords, identifiers, separators, opera‐tors, and literals The words or symbols in the Java programminglanguage are comprised of the Unicode character set

Unicode and ASCII

Maintained by the Unicode Consortium standards organization,Unicode is the universal character set with the first 128 charactersbeing the same as those in the American Standard Code for In‐formation Interchange (ASCII) character set Unicode provides

a unique number for character, usable across all platforms, pro‐grams, and languages Java SE 8 uses Unicode 6.2.0 and you canfind more information about it in the online manual Java SE 7uses Unicode 6.0.0 Java SE 6 and J2SE 5.0 use Unicode 4.0

TIP

Java comments, identifiers, and string literals are not limi‐ted to ASCII characters All other Java input elements areformed from ASCII characters

7

Trang 26

The Unicode set version used by a specified version of the Javaplatform is documented in the Character class of the Java API.The Unicode Character Code Chart for scripts, symbols, andpunctuation can be accessed at http://unicode.org/charts/.

Printable ASCII Characters

ASCII reserves code 32 (spaces) and codes 33 to 126 (letters, dig‐its, punctuation marks, and a few others) for printable characters.Table 2-1 contains the decimal values followed by the corre‐sponding ASCII characters for these codes

Table 2-1 Printable ASCII characters

Trang 27

Nonprintable ASCII Characters

ASCII reserves decimal numbers 0–31 and 127 for control char‐ acters Table 2-2 contains the decimal values followed by the cor‐responding ASCII characters for these codes

Table 2-2 Nonprintable ASCII characters

00 NUL 07 BEL 14 SO 21 NAK 28 FS

// A comment on a single line

A multiline comment begins with a forward slash immediatelyfollowed by an asterisk, and ends with an asterisk immediatelyfollowed by a forward slash The single asterisks in between pro‐vide a nice formatting convention; they are typically used, but arenot required:

/*

* A comment that can span multiple lines

* just like this

*/

Comments | 9

Trang 28

A Javadoc comment is processed by the Javadoc tool to generateAPI documentation in HTML format A Javadoc comment mustbegin with a forward slash, immediately followed by two aster‐isks, and end with an asterisk immediately followed by a forwardslash (Oracle’s documentation page provides more information

on the Javadoc tool):

/** This is my Javadoc comment */

In Java, comments cannot be nested:

/* This is /* not permissible */ in Java */

Keywords

Table 2-3 contains the Java keywords Two of these, the const andgoto keywords, are reserved but are not used by the Java language.Java 5.0 introduced the enum keyword

TIP

Java keywords cannot be used as identifiers in a Java pro‐gram

Table 2-3 Java keywords

assert else interface switch

catch float private transient

10 | Chapter 2: Lexical Elements

www.it-ebooks.info

Trang 29

const goto return volatile

continue implements short while

default import static

Digits are also allowed in identifiers, but after the first character: // Valid identifier examples

Trang 30

Table 2-4 Java bracket separators

Brackets Nomenclature Usage

( ) Parentheses, curved brackets, oval

brackets, and round brackets Adjusts precedence in arithmeticexpressions, encloses cast types,

and surrounds set of methodarguments

{ } Braces, curly brackets, fancy brackets,

squiggly brackets, and squirrelly

brackets

Surrounds blocks of code andsupports arrays

[ ] Box brackets, closed brackets, and

square brackets Supports and initializes arrays

< > Angle brackets, diamond brackets,

Guillemet characters, a.k.a angle quotes, are used to specifiedstereotypes in UML; << >>

Operators

Operators perform operations on one, two, or three operands andreturn a result Operator types in Java include assignment, arith‐metic, comparison, bitwise, increment/decrement, and class/object Table 2-5 contains the Java operators listed in precedenceorder (those with the highest precedence at the top of the table),along with a brief description of the operators and their associa‐tivity (left to right or right to left)

12 | Chapter 2: Lexical Elements

www.it-ebooks.info

Trang 31

Table 2-5 Java operators

Precedence Operator Description Association

4 *,/,% Multiplication, division,

6 <<, >>, Left shift, right shift,

unsigned right shift L → R

7 <, ⇐, >, >= Less than, less than or

equal to, greater than,greater than or equal to

L → R

instanceof Type comparison L → R

==, != Reference equality and

Trang 32

Precedence Operator Description Association

For more information on primitive type literals, see “Literals forPrimitive Types” on page 22 in Chapter 3

Boolean Literals

Boolean literals are expressed as either true or false:

boolean isReady true;

boolean isSet new Boolean(false); // unboxed

boolean isGoing false;

14 | Chapter 2: Lexical Elements

www.it-ebooks.info

Trang 33

Character Literals

A character literal is either a single character or an escape se‐quence contained within single quotes Line terminators are notallowed:

char charValue1 'a';

int intValue1 34567, intValue2 1_000_000;Decimal integers contain any number of ASCII digits, zerothrough nine, and represent positive numbers:

Integer integerValue1 newInteger(100);

Prefixing the decimal with the unary negation operator can form

a negative decimal:

publis static final int INT_VALUE 200;

Hexadecimal literals begin with 0x or 0X, followed by the ASCIIdigits zero through nine and the letters a through f (or A through

F) Java is not case-sensitive when it comes to hexadecimal literals.

Hex numbers can represent positive and negative integers andzero:

int intValue3 X64; // 100 decimal from hex

Octal literals begin with a zero followed by one or more ASCIIdigits zero through seven:

int intValue4 0144; // 100 decimal from octal

Binary literals are expressed using the prefix 0b or 0B followed byzeros and ones:

Literals | 15

Trang 34

A floating-point literal (double) is a double-precision floatingpoint of eight bytes A float is four bytes Type suffixes for dou‐bles are d or D; suffixes for floats are f or F:

[whole-number].[fractional_part][e E exp][f F d D

float floatValue1 9.15f, floatValue2 1_168fFloat floatValue3 new Float(20F);

double doubleValue1 3.12;

Double doubleValue2 new Double( e058);

float expValue1 10.0e2f, expValue2=10.0E3f;

String Literals

String literals contain zero or more characters, including escapesequences enclosed in a set of double quotes String literals can‐not contain Unicode \u000a and \u000d for line terminators; use

\r and \n instead Strings are immutable:

String stringValue1 new String("Valid literal.");String stringValue2 "Valid.\nOn new line.";String stringValue3 "Joins str" "ings";

String stringValue4 "\"Escape Sequences\"\r";There is a pool of strings associated with class String Initially,the pool is empty Literal strings and string-valued constant

16 | Chapter 2: Lexical Elements

www.it-ebooks.info

Trang 35

expressions are interned in the pool and added to the pool onlyonce.

The following example shows how literals are added to and used

in the pool:

// Adds String "thisString" to the pool

String stringValue5 "thisString";

// Uses String "thisString" from the pool

String stringValue6 "thisString";

A string can be added to the pool (if it does not already exist inthe pool) by calling the intern() method on the string The intern() method returns a string, which is either a reference to thenew string that was added to the pool or a reference to the existingstring:

String stringValue7 new String("thatString");String stringValue8 stringValue7.intern();

Table 2-6 provides the set of escape sequences in Java

Table 2-6 Character and string literal escape sequences

Name Sequence Decimal Unicode

Horizontal tab \t 9 \u0009

Carriage return \r 13 \u000D

Escape Sequences | 17

Trang 36

Name Sequence Decimal Unicode

Different line terminators are used for different platforms to ach‐ieve a newline; see Table 2-7 The println() method, which in‐cludes a line break, is a better solution than hardcoding \n and

\r when used appropriately

Table 2-7 Newline variations

POSIX-compliant operating systems (e.g., Solaris, Linux) and Mac

Unicode Currency Symbols

Unicode currency symbols are present in the range of \u20A0–

\u20CF (8352–+8399+) See Table 2-8 for examples

Table 2-8 Currency symbols within range

Name Symbol Decimal Unicode

German penny sign ₰ 8368 \u20B0

A number of currency symbols exist outside of the designatedcurrency range See Table 2-9 for examples

18 | Chapter 2: Lexical Elements

www.it-ebooks.info

Trang 37

Table 2-9 Currency symbols outside of range

Name Symbol Decimal Unicode

Latin small f with hook ƒ 402 \u0192

Bengali rupee mark ৲ 2546 \u09F2

Bengali rupee sign ৳ 2547 \u09F3

Gujarati rupee sign ૱ 2801 \u0AF1

Tamil rupee sign ௹ 3065 \u0BF9

Thai symbol baht ฿ 3647 \u0E3F

CJK unified ideograph 1 元 20803 \u5143

CJK unified ideograph 2 円 20870 \u5186

CJK unified ideograph 3 圆 22278 \u5706

CJK unified ideograph 4 圓 22291 \u5713

Unicode Currency Symbols | 19

Trang 39

CHAPTER 3

Fundamental Types

Fundamental types include the Java primitive types and theircorresponding wrapper classes/reference types Java 5.0 and be‐yond provide for automatic conversion between these primitiveand reference types through autoboxing and unboxing Numericpromotion is applied to primitive types where appropriate

Primitive Types

There are eight primitive types in Java; each is a reserved key‐word They describe variables that contain single values of theappropriate format and size; see Table 3-1 Primitive types arealways the specified precision, regardless of the underlying hard‐ware precisions (e.g., 32- or 64-bit)

Table 3-1 Primitive types

Type Detail Storage Range

boolean true or false 1 bit Not applicable

char Unicode character 2 bytes \u0000 to \uFFFF

byte Integer 1 byte –128 to 127

int Integer 4 bytes –2147483648 to 2147483647

long Integer 8 bytes –263 to 263 –1

21

Trang 40

Type Detail Storage Range

float Floating point 4 bytes 1.4e–45 to 3.4e+38

double Floating point 8 bytes 5e–324 to 1.8e+308

TIP

Primitive types byte, short, int, long, float, and dou ble are all signed Type char is unsigned

Literals for Primitive Types

All primitive types except boolean can accept character, decimal,hexadecimal, octal, and Unicode literal formats, as well as char‐acter escape sequences Where appropriate, the literal value isautomatically cast or converted Remember that bits are lost dur‐ing truncation The following is a list of primitive assignmentexamples:

boolean isTitleFight = true;

The boolean primitive’s only valid literal values are true andfalse

char [] cArray = {'\u004B', 'O', '\'', 0x0064, 041,(char) 131105, 0b00100001}; // KO'd!!!

The char primitive represents a single Unicode character.Literal values of the char primitive that are greater than twobytes need to be explicitly cast

byte rounds = 12, fighters = (byte) 2;

The byte primitive has a four-byte signed integer as its validliteral If an explicit cast is not performed, the integer is im‐plicitly cast to one byte

short seatingCapacity = 17157, vipSeats = (short) 500;The short primitive has a four-byte signed integer as its validliteral If an explicit cast is not performed, the integer is im‐plicitly cast to two bytes

22 | Chapter 3: Fundamental Types

www.it-ebooks.info

Ngày đăng: 01/08/2014, 17:06

TỪ KHÓA LIÊN QUAN

w