SlideShare a Scribd company logo
Java™ How to Program, 10/e
Late Objects Version
© Copyright 1992-2015 by Pearson Education, Inc. All Rights
Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Java application programming
 Use tools from the JDK to compile and run programs.
 Videos at www.deitel.com/books/jhtp10/
 Help you get started with Eclipse, NetBeans and IntelliJ IDEA
integrated development environments.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Java application
 A computer program that executes when you use the java
command to launch the Java Virtual Machine (JVM).
 Sample program in Fig. 2.1 displays a line of text.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
Commenting Your Programs
Comments
// Fig. 2.1: Welcome1.java
 // indicates that the line is a comment.
 Used to document programs and improve their readability.
 Compiler ignores comments.
 A comment that begins with // is an end-of-line comment—it terminates
at the end of the line on which it appears.
Traditional comment, can be spread over several lines as in
/* This is a traditional comment. It
can be split over multiple lines */
 This type of comment begins with /* and ends with */.
 All text between the delimiters is ignored by the compiler.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Javadoc comments
 Delimited by /** and */.
 All text between the Javadoc comment delimiters is ignored by
the compiler.
 Enable you to embed program documentation directly in your
programs.
 The javadoc utility program (online Appendix G) reads
Javadoc comments and uses them to prepare program
documentation in HTML format.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
Using Blank Lines
Blank lines, space characters and tabs
 Make programs easier to read.
 Together, they’re known as white space (or whitespace).
 White space is ignored by the compiler.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
Declaring a class
Class declaration
public class Welcome1
 Every Java program consists of at least one class that you
define.
 class keyword introduces a class declaration and is
immediately followed by the class name.
 Keywords (Appendix C) are reserved for use by Java and are
always spelled with all lowercase letters.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
Filename for a public Class
A public class must be placed in a file that has a
filename of the form ClassName.java, so class
Welcome1 is stored in the file Welcome1.java.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
Class Names and Identifiers
By convention, begin with a capital letter and capitalize the
first letter of each word they include (e.g.,
SampleClassName).
A class name is an identifier—a series of characters
consisting of letters, digits, underscores (_) and dollar signs
($) that does not begin with a digit and does not contain
spaces.
Java is case sensitive—uppercase and lowercase letters are
distinct—so a1 and A1 are different (but both valid)
identifiers.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
Class Body
A left brace, {, begins the body of every class
declaration.
A corresponding right brace, }, must end each class
declaration.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
Declaring a Method
public static void main( String[] args )
Starting point of every Java application.
Parentheses after the identifier main indicate that it’s a
program building block called a method.
Java class declarations normally contain one or more methods.
main must be defined as shown; otherwise, the JVM will not
execute the application.
Methods perform tasks and can return information when they
complete their tasks.
Keyword void indicates that this method will not return any
information.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Body of the method declaration
 Enclosed in left and right braces.
 Statement
System.out.println("Welcome to Java Programming!");
 Instructs the computer to perform an action
 Display the characters contained between the double quotation
marks.
 Together, the quotation marks and the characters between them
are a string—also known as a character string or a string literal.
 White-space characters in strings are not ignored by the
compiler.
 Strings cannot span multiple lines of code.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 System.out object
 Standard output object.
 Allows a Java application to display information in the
command window from which it executes.
 System.out.println method
 Displays (or prints) a line of text in the command window.
 The string in the parentheses the argument to the method.
 Positions the output cursor at the beginning of the next line in
the command window.
 Most statements end with a semicolon.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
Compiling Your First Java Application
Open a command window and change to the directory where the program is
stored.
Many operating systems use the command cd to change directories.
To compile the program, type
javac Welcome1.java
If the program contains no compilation errors, preceding command creates
a.class file (known as the class file) containing the platform-independent
Java bytecodes that represent the application.
When we use the java command to execute the application on a given
platform, these bytecodes will be translated by the JVM into instructions that
are understood by the underlying operating system.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
Executing the Welcome1 Application
To execute this program in a command window, change to the
directory containing Welcome1.java—C:examplesch02
fig02_01 on Microsoft Windows or ~/Documents/
examples/ch02/fig02_01 on Linux/OS X.
Next, type java Welcome1.
This launches the JVM, which loads the Welcome1.class
file.
The command omits the .class file-name extension;
otherwise, the JVM will not execute the program.
The JVM calls class Welcome1’s main method.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Class Welcome2, shown in Fig. 2.3, uses two
statements to produce the same output as that shown in
Fig. 2.1.
 New and key features in each code listing are
highlighted.
 System.out’s method print displays a string.
 Unlike println, print does not position the output
cursor at the beginning of the next line in the command
window.
 The next character the program displays will appear
immediately after the last character that print displays.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Newline characters indicate to System.out’s print and
println methods when to position the output cursor at the
beginning of the next line in the command window.
 Newline characters are whitespace characters.
 The backslash () is called an escape character.
 Indicates a “special character”
 Backslash is combined with the next character to form an
escape sequence—n represents the newline character.
 Complete list of escape sequences
http://docs.oracle.com/javase/specs/jls/se7/html/
jls-3.html#jls-3.10.6.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 System.out.printf method
 f means “formatted”
 displays formatted data
 Multiple method arguments are placed in a comma-separated list.
 Calling a method is also referred to as invoking a method.
 Java allows large statements to be split over many lines.
 Cannot split a statement in the middle of an identifier or string.
 Method printf’s first argument is a format string
 May consist of fixed text and format specifiers.
 Fixed text is output as it would be by print or println.
 Each format specifier is a placeholder for a value and specifies the type of
data to output.
 Format specifiers begin with a percent sign (%) and are followed
by a character that represents the data type.
 Format specifier %s is a placeholder for a string.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Integers
 Whole numbers, like –22, 7, 0 and 1024)
 Programs remember numbers and other data in the
computer’s memory and access that data through
program elements called variables.
 The program of Fig. 2.7 demonstrates these concepts.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Helps the compiler locate a class that is used in this
program.
 Rich set of predefined classes that you can reuse rather
than “reinventing the wheel.”
 Classes are grouped into packages—named groups of
related classes—and are collectively referred to as the
Java class library, or the Java Application
Programming Interface (Java API).
 You use import declarations to identify the
predefined classes used in a Java program.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Variable declaration statement
Scanner input = new Scanner( System.in );
 Specifies the name (input) and type (Scanner) of a variable that
is used in this program.
 Variable
 A location in the computer’s memory where a value can be stored
for use later in a program.
 Must be declared with a name and a type before they can be used.
 A variable’s name enables the program to access the value of the
variable in memory.
 The name can be any valid identifier.
 A variable’s type specifies what kind of information is stored at that
location in memory.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Scanner
 Enables a program to read data for use in a program.
 Data can come from many sources, such as the user at the keyboard or a
file on disk.
 Before using a Scanner, you must create it and specify the source of
the data.
 The equals sign (=) in a declaration indicates that the variable
should be initialized (i.e., prepared for use in the program) with
the result of the expression to the right of the equals sign.
 The new keyword creates an object.
 Standard input object, System.in, enables applications to read
bytes of data typed by the user.
 Scanner object translates these bytes into types that can be
used in a program.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Variable declaration statements
int number1; // first number to add
int number2; // second number to add
int sum; // sum of number1 and number2
declare that variables number1, number2 and sum hold
data of type int
 They can hold integer.
 Range of values for an int is –2,147,483,648 to +2,147,483,647.
 The int values you use in a program may not contain commas.
 Several variables of the same type may be declared in one
declaration with the variable names separated by commas.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Prompt
 Output statement that directs the user to take a specific action.
 Class System
 Part of package java.lang.
 Class System is not imported with an import declaration at
the beginning of the program.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Scanner method nextInt
number1 = input.nextInt(); // read first number from
user
 Obtains an integer from the user at the keyboard.
 Program waits for the user to type the number and press the
Enter key to submit the number to the program.
 The result of the call to method nextInt is placed in
variable number1 by using the assignment operator, =.
 “number1 gets the value of input.nextInt().”
 Operator = is called a binary operator—it has two operands.
 Everything to the right of the assignment operator, =, is always
evaluated before the assignment is performed.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Arithmetic
sum = number1 + number2; // add numbers then store total in
sum
 Assignment statement that calculates the sum of the variables
number1 and number2 then assigns the result to variable sum
by using the assignment operator, =.
 “sum gets the value of number1 + number2.”
 Portions of statements that contain calculations are called
expressions.
 An expression is any portion of a statement that has a value
associated with it.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Integer formatted output
System.out.printf( "Sum is %d%n", sum );
 Format specifier %d is a placeholder for an int value
 The letter d stands for “decimal integer.”
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Variables
 Every variable has a name, a type, a size (in bytes) and a value.
 When a new value is placed into a variable, the new value
replaces the previous value (if any)
 The previous value is lost, so this process is said to be
destructive.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Arithmetic operators are summarized in Fig. 2.11.
 The asterisk (*) indicates multiplication
 The percent sign (%) is the remainder operator
 The arithmetic operators are binary operators because
they each operate on two operands.
 Integer division yields an integer quotient.
 Any fractional part in integer division is simply truncated (i.e.,
discarded)—no rounding occurs.
 The remainder operator, %, yields the remainder after
division.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Arithmetic expressions in Java must be written in
straight-line form to facilitate entering programs into
the computer.
 Expressions such as “a divided by b” must be written
as a / b, so that all constants, variables and operators
appear in a straight line.
 Parentheses are used to group terms in expressions in
the same manner as in algebraic expressions.
 If an expression contains nested parentheses, the
expression in the innermost set of parentheses is
evaluated first.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Rules of operator precedence
 Multiplication, division and remainder operations are applied first.
 If an expression contains several such operations, they are applied from
left to right.
 Multiplication, division and remainder operators have the same level of
precedence.
 Addition and subtraction operations are applied next.
 If an expression contains several such operations, the operators are
applied from left to right.
 Addition and subtraction operators have the same level of precedence.
 When we say that operators are applied from left to right, we are
referring to their associativity.
 Some operators associate from right to left.
 Complete precedence chart is included in Appendix A.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 As in algebra, it’s acceptable to place redundant
parentheses (unnecessary parentheses) in an ex-
pression to make the expression clearer.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 Condition
 An expression that can be true or false.
 if selection statement
 Allows a program to make a decision based on a condition’s value.
 Equality operators (== and !=)
 Relational operators (>, <, >= and <=)
 Both equality operators have the same level of precedence,
which is lower than that of the relational operators.
 The equality operators associate from left to right.
 The relational operators all have the same level of
precedence and also associate from left to right.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
 An if statement always begins with keyword if,
followed by a condition in parentheses.
 Expects one statement in its body, but may contain multiple
statements if they are enclosed in a set of braces ({}).
 The indentation of the body statement is not required, but it
improves the program’s readability by emphasizing that
statements are part of the body.
 Note that there is no semicolon (;) at the end of the
first line of each if statement.
 Such a semicolon would result in a logic error at execution
time.
 Treated as the empty statement—semicolon by itself.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
© Copyright 1992-2015 by Pearson
Education, Inc. All Rights Reserved.
Ad

Recommended

02장 Introduction to Java Applications
02장 Introduction to Java Applications
유석 남
 
AndroidHTP3_AppA.pptx
AndroidHTP3_AppA.pptx
MattMarino13
 
Ch.02.ppt[27/11, 11:00 am] Sumaya👸🏻✨️: Mida kale waqtiga wuba kudhamaadaye [2...
Ch.02.ppt[27/11, 11:00 am] Sumaya👸🏻✨️: Mida kale waqtiga wuba kudhamaadaye [2...
xaydari03
 
ch02-Java Fundamentals-Java Fundamentals.pdf
ch02-Java Fundamentals-Java Fundamentals.pdf
ayeshazaveri4
 
CSO_Gaddis_Java_Chapter02.ppt java book.
CSO_Gaddis_Java_Chapter02.ppt java book.
resoj26651
 
Java
Java
tintinsan
 
Eo gaddis java_chapter_02_5e
Eo gaddis java_chapter_02_5e
Gina Bullock
 
01-ch01-1-println.ppt java introduction one
01-ch01-1-println.ppt java introduction one
ssuser656672
 
Chapter 2.4
Chapter 2.4
sotlsoc
 
OOP Using Java Ch2 all about oop .pptx
OOP Using Java Ch2 all about oop .pptx
doopagamer
 
Introduction to Java Applications
Introduction to Java Applications
Andy Juan Sarango Veliz
 
JAVA Programming notes.ppt
JAVA Programming notes.ppt
AravindSiva19
 
Cso gaddis java_chapter2
Cso gaddis java_chapter2
mlrbrown
 
Java PPt.ppt
Java PPt.ppt
NavneetSheoran3
 
Introduction to objects and inputoutput
Introduction to objects and inputoutput
Ahmad Idrees
 
Java Primitive Type from Long Nguyen's lecture
Java Primitive Type from Long Nguyen's lecture
ssusere8fc511
 
Lec 5 13_aug [compatibility mode]
Lec 5 13_aug [compatibility mode]
Palak Sanghani
 
Java tutorial for beginners-tibacademy.in
Java tutorial for beginners-tibacademy.in
TIB Academy
 
Introduction to computer science
Introduction to computer science
umardanjumamaiwada
 
lecture 6
lecture 6
umardanjumamaiwada
 
Intro to programing with java-lecture 1
Intro to programing with java-lecture 1
Mohamed Essam
 
Java Basics.pdf
Java Basics.pdf
EdFeranil
 
Unit 1: Primitive Types - Basic Java Syntax
Unit 1: Primitive Types - Basic Java Syntax
agautham211
 
Chapter 1_Intro to Java.ppt
Chapter 1_Intro to Java.ppt
LisaMalar
 
Lecture 2 - The History and Overview of Java.pptx
Lecture 2 - The History and Overview of Java.pptx
shovonpoco
 
Multi Threading- in Java WPS Office.pptx
Multi Threading- in Java WPS Office.pptx
ManasaMR2
 
java01.ppt
java01.ppt
Godwin585235
 
java: basics, user input, data type, constructor
java: basics, user input, data type, constructor
Shivam Singhal
 
How Insurance Policy Management Software Streamlines Operations
How Insurance Policy Management Software Streamlines Operations
Insurance Tech Services
 
IBM Rational Unified Process For Software Engineering - Introduction
IBM Rational Unified Process For Software Engineering - Introduction
Gaurav Sharma
 

More Related Content

Similar to jhtp10_ch02_Intro to java Applications: Input/Output and Operators (20)

Chapter 2.4
Chapter 2.4
sotlsoc
 
OOP Using Java Ch2 all about oop .pptx
OOP Using Java Ch2 all about oop .pptx
doopagamer
 
Introduction to Java Applications
Introduction to Java Applications
Andy Juan Sarango Veliz
 
JAVA Programming notes.ppt
JAVA Programming notes.ppt
AravindSiva19
 
Cso gaddis java_chapter2
Cso gaddis java_chapter2
mlrbrown
 
Java PPt.ppt
Java PPt.ppt
NavneetSheoran3
 
Introduction to objects and inputoutput
Introduction to objects and inputoutput
Ahmad Idrees
 
Java Primitive Type from Long Nguyen's lecture
Java Primitive Type from Long Nguyen's lecture
ssusere8fc511
 
Lec 5 13_aug [compatibility mode]
Lec 5 13_aug [compatibility mode]
Palak Sanghani
 
Java tutorial for beginners-tibacademy.in
Java tutorial for beginners-tibacademy.in
TIB Academy
 
Introduction to computer science
Introduction to computer science
umardanjumamaiwada
 
lecture 6
lecture 6
umardanjumamaiwada
 
Intro to programing with java-lecture 1
Intro to programing with java-lecture 1
Mohamed Essam
 
Java Basics.pdf
Java Basics.pdf
EdFeranil
 
Unit 1: Primitive Types - Basic Java Syntax
Unit 1: Primitive Types - Basic Java Syntax
agautham211
 
Chapter 1_Intro to Java.ppt
Chapter 1_Intro to Java.ppt
LisaMalar
 
Lecture 2 - The History and Overview of Java.pptx
Lecture 2 - The History and Overview of Java.pptx
shovonpoco
 
Multi Threading- in Java WPS Office.pptx
Multi Threading- in Java WPS Office.pptx
ManasaMR2
 
java01.ppt
java01.ppt
Godwin585235
 
java: basics, user input, data type, constructor
java: basics, user input, data type, constructor
Shivam Singhal
 
Chapter 2.4
Chapter 2.4
sotlsoc
 
OOP Using Java Ch2 all about oop .pptx
OOP Using Java Ch2 all about oop .pptx
doopagamer
 
JAVA Programming notes.ppt
JAVA Programming notes.ppt
AravindSiva19
 
Cso gaddis java_chapter2
Cso gaddis java_chapter2
mlrbrown
 
Introduction to objects and inputoutput
Introduction to objects and inputoutput
Ahmad Idrees
 
Java Primitive Type from Long Nguyen's lecture
Java Primitive Type from Long Nguyen's lecture
ssusere8fc511
 
Lec 5 13_aug [compatibility mode]
Lec 5 13_aug [compatibility mode]
Palak Sanghani
 
Java tutorial for beginners-tibacademy.in
Java tutorial for beginners-tibacademy.in
TIB Academy
 
Introduction to computer science
Introduction to computer science
umardanjumamaiwada
 
Intro to programing with java-lecture 1
Intro to programing with java-lecture 1
Mohamed Essam
 
Java Basics.pdf
Java Basics.pdf
EdFeranil
 
Unit 1: Primitive Types - Basic Java Syntax
Unit 1: Primitive Types - Basic Java Syntax
agautham211
 
Chapter 1_Intro to Java.ppt
Chapter 1_Intro to Java.ppt
LisaMalar
 
Lecture 2 - The History and Overview of Java.pptx
Lecture 2 - The History and Overview of Java.pptx
shovonpoco
 
Multi Threading- in Java WPS Office.pptx
Multi Threading- in Java WPS Office.pptx
ManasaMR2
 
java: basics, user input, data type, constructor
java: basics, user input, data type, constructor
Shivam Singhal
 

Recently uploaded (20)

How Insurance Policy Management Software Streamlines Operations
How Insurance Policy Management Software Streamlines Operations
Insurance Tech Services
 
IBM Rational Unified Process For Software Engineering - Introduction
IBM Rational Unified Process For Software Engineering - Introduction
Gaurav Sharma
 
FME as an Orchestration Tool - Peak of Data & AI 2025
FME as an Orchestration Tool - Peak of Data & AI 2025
Safe Software
 
Agentic Techniques in Retrieval-Augmented Generation with Azure AI Search
Agentic Techniques in Retrieval-Augmented Generation with Azure AI Search
Maxim Salnikov
 
Agile Software Engineering Methodologies
Agile Software Engineering Methodologies
Gaurav Sharma
 
Integrating Survey123 and R&H Data Using FME
Integrating Survey123 and R&H Data Using FME
Safe Software
 
Zoneranker’s Digital marketing solutions
Zoneranker’s Digital marketing solutions
reenashriee
 
Step by step guide to install Flutter and Dart
Step by step guide to install Flutter and Dart
S Pranav (Deepu)
 
Automated Migration of ESRI Geodatabases Using XML Control Files and FME
Automated Migration of ESRI Geodatabases Using XML Control Files and FME
Safe Software
 
MOVIE RECOMMENDATION SYSTEM, UDUMULA GOPI REDDY, Y24MC13085.pptx
MOVIE RECOMMENDATION SYSTEM, UDUMULA GOPI REDDY, Y24MC13085.pptx
Maharshi Mallela
 
Milwaukee Marketo User Group June 2025 - Optimize and Enhance Efficiency - Sm...
Milwaukee Marketo User Group June 2025 - Optimize and Enhance Efficiency - Sm...
BradBedford3
 
How to Choose the Right Web Development Agency.pdf
How to Choose the Right Web Development Agency.pdf
Creative Fosters
 
Reimagining Software Development and DevOps with Agentic AI
Reimagining Software Development and DevOps with Agentic AI
Maxim Salnikov
 
Smart Financial Solutions: Money Lender Software, Daily Pigmy & Personal Loan...
Smart Financial Solutions: Money Lender Software, Daily Pigmy & Personal Loan...
Intelli grow
 
Software Engineering Process, Notation & Tools Introduction - Part 3
Software Engineering Process, Notation & Tools Introduction - Part 3
Gaurav Sharma
 
Shell Skill Tree - LabEx Certification (LabEx)
Shell Skill Tree - LabEx Certification (LabEx)
VICTOR MAESTRE RAMIREZ
 
How the US Navy Approaches DevSecOps with Raise 2.0
How the US Navy Approaches DevSecOps with Raise 2.0
Anchore
 
Software Testing & it’s types (DevOps)
Software Testing & it’s types (DevOps)
S Pranav (Deepu)
 
Migrating to Azure Cosmos DB the Right Way
Migrating to Azure Cosmos DB the Right Way
Alexander (Alex) Komyagin
 
Porting Qt 5 QML Modules to Qt 6 Webinar
Porting Qt 5 QML Modules to Qt 6 Webinar
ICS
 
How Insurance Policy Management Software Streamlines Operations
How Insurance Policy Management Software Streamlines Operations
Insurance Tech Services
 
IBM Rational Unified Process For Software Engineering - Introduction
IBM Rational Unified Process For Software Engineering - Introduction
Gaurav Sharma
 
FME as an Orchestration Tool - Peak of Data & AI 2025
FME as an Orchestration Tool - Peak of Data & AI 2025
Safe Software
 
Agentic Techniques in Retrieval-Augmented Generation with Azure AI Search
Agentic Techniques in Retrieval-Augmented Generation with Azure AI Search
Maxim Salnikov
 
Agile Software Engineering Methodologies
Agile Software Engineering Methodologies
Gaurav Sharma
 
Integrating Survey123 and R&H Data Using FME
Integrating Survey123 and R&H Data Using FME
Safe Software
 
Zoneranker’s Digital marketing solutions
Zoneranker’s Digital marketing solutions
reenashriee
 
Step by step guide to install Flutter and Dart
Step by step guide to install Flutter and Dart
S Pranav (Deepu)
 
Automated Migration of ESRI Geodatabases Using XML Control Files and FME
Automated Migration of ESRI Geodatabases Using XML Control Files and FME
Safe Software
 
MOVIE RECOMMENDATION SYSTEM, UDUMULA GOPI REDDY, Y24MC13085.pptx
MOVIE RECOMMENDATION SYSTEM, UDUMULA GOPI REDDY, Y24MC13085.pptx
Maharshi Mallela
 
Milwaukee Marketo User Group June 2025 - Optimize and Enhance Efficiency - Sm...
Milwaukee Marketo User Group June 2025 - Optimize and Enhance Efficiency - Sm...
BradBedford3
 
How to Choose the Right Web Development Agency.pdf
How to Choose the Right Web Development Agency.pdf
Creative Fosters
 
Reimagining Software Development and DevOps with Agentic AI
Reimagining Software Development and DevOps with Agentic AI
Maxim Salnikov
 
Smart Financial Solutions: Money Lender Software, Daily Pigmy & Personal Loan...
Smart Financial Solutions: Money Lender Software, Daily Pigmy & Personal Loan...
Intelli grow
 
Software Engineering Process, Notation & Tools Introduction - Part 3
Software Engineering Process, Notation & Tools Introduction - Part 3
Gaurav Sharma
 
Shell Skill Tree - LabEx Certification (LabEx)
Shell Skill Tree - LabEx Certification (LabEx)
VICTOR MAESTRE RAMIREZ
 
How the US Navy Approaches DevSecOps with Raise 2.0
How the US Navy Approaches DevSecOps with Raise 2.0
Anchore
 
Software Testing & it’s types (DevOps)
Software Testing & it’s types (DevOps)
S Pranav (Deepu)
 
Porting Qt 5 QML Modules to Qt 6 Webinar
Porting Qt 5 QML Modules to Qt 6 Webinar
ICS
 
Ad

jhtp10_ch02_Intro to java Applications: Input/Output and Operators

  • 1. Java™ How to Program, 10/e Late Objects Version © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 2. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 3. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 4.  Java application programming  Use tools from the JDK to compile and run programs.  Videos at www.deitel.com/books/jhtp10/  Help you get started with Eclipse, NetBeans and IntelliJ IDEA integrated development environments. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 5.  Java application  A computer program that executes when you use the java command to launch the Java Virtual Machine (JVM).  Sample program in Fig. 2.1 displays a line of text. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 6. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 7. Commenting Your Programs Comments // Fig. 2.1: Welcome1.java  // indicates that the line is a comment.  Used to document programs and improve their readability.  Compiler ignores comments.  A comment that begins with // is an end-of-line comment—it terminates at the end of the line on which it appears. Traditional comment, can be spread over several lines as in /* This is a traditional comment. It can be split over multiple lines */  This type of comment begins with /* and ends with */.  All text between the delimiters is ignored by the compiler. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 8.  Javadoc comments  Delimited by /** and */.  All text between the Javadoc comment delimiters is ignored by the compiler.  Enable you to embed program documentation directly in your programs.  The javadoc utility program (online Appendix G) reads Javadoc comments and uses them to prepare program documentation in HTML format. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 9. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 10. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 11. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 12. Using Blank Lines Blank lines, space characters and tabs  Make programs easier to read.  Together, they’re known as white space (or whitespace).  White space is ignored by the compiler. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 13. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 14. Declaring a class Class declaration public class Welcome1  Every Java program consists of at least one class that you define.  class keyword introduces a class declaration and is immediately followed by the class name.  Keywords (Appendix C) are reserved for use by Java and are always spelled with all lowercase letters. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 15. Filename for a public Class A public class must be placed in a file that has a filename of the form ClassName.java, so class Welcome1 is stored in the file Welcome1.java. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 16. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 17. Class Names and Identifiers By convention, begin with a capital letter and capitalize the first letter of each word they include (e.g., SampleClassName). A class name is an identifier—a series of characters consisting of letters, digits, underscores (_) and dollar signs ($) that does not begin with a digit and does not contain spaces. Java is case sensitive—uppercase and lowercase letters are distinct—so a1 and A1 are different (but both valid) identifiers. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 18. Class Body A left brace, {, begins the body of every class declaration. A corresponding right brace, }, must end each class declaration. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 19. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 20. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 21. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 22. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 23. Declaring a Method public static void main( String[] args ) Starting point of every Java application. Parentheses after the identifier main indicate that it’s a program building block called a method. Java class declarations normally contain one or more methods. main must be defined as shown; otherwise, the JVM will not execute the application. Methods perform tasks and can return information when they complete their tasks. Keyword void indicates that this method will not return any information. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 24. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 25.  Body of the method declaration  Enclosed in left and right braces.  Statement System.out.println("Welcome to Java Programming!");  Instructs the computer to perform an action  Display the characters contained between the double quotation marks.  Together, the quotation marks and the characters between them are a string—also known as a character string or a string literal.  White-space characters in strings are not ignored by the compiler.  Strings cannot span multiple lines of code. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 26. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 27.  System.out object  Standard output object.  Allows a Java application to display information in the command window from which it executes.  System.out.println method  Displays (or prints) a line of text in the command window.  The string in the parentheses the argument to the method.  Positions the output cursor at the beginning of the next line in the command window.  Most statements end with a semicolon. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 28. Compiling Your First Java Application Open a command window and change to the directory where the program is stored. Many operating systems use the command cd to change directories. To compile the program, type javac Welcome1.java If the program contains no compilation errors, preceding command creates a.class file (known as the class file) containing the platform-independent Java bytecodes that represent the application. When we use the java command to execute the application on a given platform, these bytecodes will be translated by the JVM into instructions that are understood by the underlying operating system. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 29. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 30. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 31. Executing the Welcome1 Application To execute this program in a command window, change to the directory containing Welcome1.java—C:examplesch02 fig02_01 on Microsoft Windows or ~/Documents/ examples/ch02/fig02_01 on Linux/OS X. Next, type java Welcome1. This launches the JVM, which loads the Welcome1.class file. The command omits the .class file-name extension; otherwise, the JVM will not execute the program. The JVM calls class Welcome1’s main method. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 32. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 33. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 34.  Class Welcome2, shown in Fig. 2.3, uses two statements to produce the same output as that shown in Fig. 2.1.  New and key features in each code listing are highlighted.  System.out’s method print displays a string.  Unlike println, print does not position the output cursor at the beginning of the next line in the command window.  The next character the program displays will appear immediately after the last character that print displays. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 35. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 36.  Newline characters indicate to System.out’s print and println methods when to position the output cursor at the beginning of the next line in the command window.  Newline characters are whitespace characters.  The backslash () is called an escape character.  Indicates a “special character”  Backslash is combined with the next character to form an escape sequence—n represents the newline character.  Complete list of escape sequences http://docs.oracle.com/javase/specs/jls/se7/html/ jls-3.html#jls-3.10.6. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 37. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 38. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 39.  System.out.printf method  f means “formatted”  displays formatted data  Multiple method arguments are placed in a comma-separated list.  Calling a method is also referred to as invoking a method.  Java allows large statements to be split over many lines.  Cannot split a statement in the middle of an identifier or string.  Method printf’s first argument is a format string  May consist of fixed text and format specifiers.  Fixed text is output as it would be by print or println.  Each format specifier is a placeholder for a value and specifies the type of data to output.  Format specifiers begin with a percent sign (%) and are followed by a character that represents the data type.  Format specifier %s is a placeholder for a string. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 40. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 41. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 42. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 43.  Integers  Whole numbers, like –22, 7, 0 and 1024)  Programs remember numbers and other data in the computer’s memory and access that data through program elements called variables.  The program of Fig. 2.7 demonstrates these concepts. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 44. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 45. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 46.  Helps the compiler locate a class that is used in this program.  Rich set of predefined classes that you can reuse rather than “reinventing the wheel.”  Classes are grouped into packages—named groups of related classes—and are collectively referred to as the Java class library, or the Java Application Programming Interface (Java API).  You use import declarations to identify the predefined classes used in a Java program. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 47. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 48. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 49. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 50.  Variable declaration statement Scanner input = new Scanner( System.in );  Specifies the name (input) and type (Scanner) of a variable that is used in this program.  Variable  A location in the computer’s memory where a value can be stored for use later in a program.  Must be declared with a name and a type before they can be used.  A variable’s name enables the program to access the value of the variable in memory.  The name can be any valid identifier.  A variable’s type specifies what kind of information is stored at that location in memory. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 51.  Scanner  Enables a program to read data for use in a program.  Data can come from many sources, such as the user at the keyboard or a file on disk.  Before using a Scanner, you must create it and specify the source of the data.  The equals sign (=) in a declaration indicates that the variable should be initialized (i.e., prepared for use in the program) with the result of the expression to the right of the equals sign.  The new keyword creates an object.  Standard input object, System.in, enables applications to read bytes of data typed by the user.  Scanner object translates these bytes into types that can be used in a program. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 52.  Variable declaration statements int number1; // first number to add int number2; // second number to add int sum; // sum of number1 and number2 declare that variables number1, number2 and sum hold data of type int  They can hold integer.  Range of values for an int is –2,147,483,648 to +2,147,483,647.  The int values you use in a program may not contain commas.  Several variables of the same type may be declared in one declaration with the variable names separated by commas. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 53. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 54. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 55. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 56.  Prompt  Output statement that directs the user to take a specific action.  Class System  Part of package java.lang.  Class System is not imported with an import declaration at the beginning of the program. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 57. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 58.  Scanner method nextInt number1 = input.nextInt(); // read first number from user  Obtains an integer from the user at the keyboard.  Program waits for the user to type the number and press the Enter key to submit the number to the program.  The result of the call to method nextInt is placed in variable number1 by using the assignment operator, =.  “number1 gets the value of input.nextInt().”  Operator = is called a binary operator—it has two operands.  Everything to the right of the assignment operator, =, is always evaluated before the assignment is performed. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 59. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 60.  Arithmetic sum = number1 + number2; // add numbers then store total in sum  Assignment statement that calculates the sum of the variables number1 and number2 then assigns the result to variable sum by using the assignment operator, =.  “sum gets the value of number1 + number2.”  Portions of statements that contain calculations are called expressions.  An expression is any portion of a statement that has a value associated with it. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 61.  Integer formatted output System.out.printf( "Sum is %d%n", sum );  Format specifier %d is a placeholder for an int value  The letter d stands for “decimal integer.” © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 62.  Variables  Every variable has a name, a type, a size (in bytes) and a value.  When a new value is placed into a variable, the new value replaces the previous value (if any)  The previous value is lost, so this process is said to be destructive. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 63. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 64. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 65. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 66.  Arithmetic operators are summarized in Fig. 2.11.  The asterisk (*) indicates multiplication  The percent sign (%) is the remainder operator  The arithmetic operators are binary operators because they each operate on two operands.  Integer division yields an integer quotient.  Any fractional part in integer division is simply truncated (i.e., discarded)—no rounding occurs.  The remainder operator, %, yields the remainder after division. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 67. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 68.  Arithmetic expressions in Java must be written in straight-line form to facilitate entering programs into the computer.  Expressions such as “a divided by b” must be written as a / b, so that all constants, variables and operators appear in a straight line.  Parentheses are used to group terms in expressions in the same manner as in algebraic expressions.  If an expression contains nested parentheses, the expression in the innermost set of parentheses is evaluated first. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 69.  Rules of operator precedence  Multiplication, division and remainder operations are applied first.  If an expression contains several such operations, they are applied from left to right.  Multiplication, division and remainder operators have the same level of precedence.  Addition and subtraction operations are applied next.  If an expression contains several such operations, the operators are applied from left to right.  Addition and subtraction operators have the same level of precedence.  When we say that operators are applied from left to right, we are referring to their associativity.  Some operators associate from right to left.  Complete precedence chart is included in Appendix A. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 70. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 71. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 72.  As in algebra, it’s acceptable to place redundant parentheses (unnecessary parentheses) in an ex- pression to make the expression clearer. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 73.  Condition  An expression that can be true or false.  if selection statement  Allows a program to make a decision based on a condition’s value.  Equality operators (== and !=)  Relational operators (>, <, >= and <=)  Both equality operators have the same level of precedence, which is lower than that of the relational operators.  The equality operators associate from left to right.  The relational operators all have the same level of precedence and also associate from left to right. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 74. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 75. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 76. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 77. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 78.  An if statement always begins with keyword if, followed by a condition in parentheses.  Expects one statement in its body, but may contain multiple statements if they are enclosed in a set of braces ({}).  The indentation of the body statement is not required, but it improves the program’s readability by emphasizing that statements are part of the body.  Note that there is no semicolon (;) at the end of the first line of each if statement.  Such a semicolon would result in a logic error at execution time.  Treated as the empty statement—semicolon by itself. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 79. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 80. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 81. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 82. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.
  • 83. © Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved.