White Space

advertisement
White Space
• Spaces, blank lines, and tabs are
collectively called white space and are used
to separate words and symbols in a program
• Extra white space is ignored
• A valid Java program can be formatted
many different ways
• Programs should be formatted to enhance
readability, using consistent indentation
Comments
• Comments in a program are also called
inline documentation
• They should be included to explain the
purpose of the program and describe
processing steps
• Java comments can take two forms:
– // comment runs to the end of the line
– /* comment runs to terminating symbol, even
across line breaks */
Identifiers
• Identifiers are the words a programmer uses
in a program
• Most identifiers have no predefined
meaning except as specified by the
programmer
• An identifier can be made up of letters,
digits, the underscore character (_), and the
dollar sign
• They cannot begin with a digit
Reserved Words
• Some identifiers, called reserved words,
have specific meanings in Java and cannot
be used in other ways
• abstract boolean break byte
byvalue case cast catch char
class const continue default do
double else extends false final
finally float for future generic
goto if implements import inner
Literals
• A literal is an explicit data value used in a
program
• Integer literals: 25 69 -4288
• Floating point literals: 3.14159 42.075 0.5
• String literals: "The result is: " "To
thine own self be true."
The Java API
• The Java Application Programmer Interface
(API) is a collection of classes that can be
used as needed
• The println and print methods are part of the
Java API; they are not part of the Java
language itself
• Both methods print information to the
screen; the difference is that println
moves to the next line when done, but print
Errors
• A program can have three types of errors
• The compiler will find problems with
syntax and other basic issues (compiletime errors)
• If compile-time errors exist, an executable
version of the program is not created
• A problem can occur during program
execution, such as trying to divide by
zero, which causes a program to terminate
Command Line Arguments
• See Name_Tag.java
• The main method accepts extra information
on the command line when a program is
executed
• > java Name_Tag John
• Each extra value is called command line
argument
• In Java, command line arguments are
always read as a list of character strings
Object-Oriented Programming
• Java is object-oriented language
• Programs are made from software
components called objects
• An object contains data and methods
• An object is defined by a class
• Multiple objects can be created from the
same class
Object-Oriented Programming
• A class represents a concept and an object
represents the realization of that concept
• Car Class Objects
Object-Oriented Programming
• Objects can also be derived from each other
using a process called inheritance
• Objects, classes, and inheritance will be
discussed in greater detail later
Class Libraries
• The Java API is a class library, a group of
classes that support program
development Classes in a class hierarchy
are often related by inheritance
• The classes in the Java API is separated into
packages
• The System class, for example, is in
package java.lang
• Each package contains a set of classes that
The Java API Packages
• Some packages in the Java API:
java.applet
java.beans
java.security
java.lang
java.net
java.text
java.awt
java.io
java.sql
java.math
java.rmi
java.util
• java.lang package: free gift
Importing Packages
• Using a class from the Java API can be
accomplished by
–
using its fully qualified name:
java.lang.System.out.println ();
–
Or, the package can be imported using an
import statement, which has two forms:
–
import java.applet.*;
–
import java.util.Random;
• The java.lang package is automatically
Primitive Data Types
• A data type is defined by a set of values and
the operators you can perform on them
• Each value stored in memory is associated
with a particular data type
• The Java language has several predefined
types, called primitive data types. The
following reserved words represent eight
different primitive types:
– byte, short, int, long, float, double,
Integers
• There are four separate integer primitive
data types
They differ by the amount of memory
used to store them
Type
byte
short
int
long
•Boolean
•
A boolean value represents a true or false
condition
•
They can also be used to represent any
two states, such as a
light bulb being on or off
•
The reserved words true and false are the
only valid values
for a boolean type
Characters
• The ASCII character set is still the basis for
many other programming languages
• ASCII is a subset of Unicode, including:
– uppercase letters
– lowercase letters
– punctuation
digits
special symbols
control characters
A, B, C, …
Wrappers
• For each primitive data type there is a
corresponding wrapper class.
• For example:
Wrapper classes are useful in situations
where you need an object instead of a
primitive type
They also contain some useful methods
Numeric Input
• Converting a string that holds an integer into
the integer value can be done with a method in
the Integer wrapper class:
value=Integer.parseInt(my_string);
• A value can be read and converted in one line:
num=
Integer.parseInt (stdin.readLine());
Expressions
• An expression is a combination of
operators and operands
– The arithmetic operators include addition (+),
subtraction (-),multiplication (*), and division
(/)
– Operands can be literal values, variables, or
other sources of data
– The programmer determines what is done with
the result of an expression (stored, printed, etc.)
Operator Precedence
• The order in which operands are evaluated
in an expression
is determined by a well-defined
precedence hierarchy
Operators at the same level of
precedence are evaluated
according to their associativity (right to
left or left to right)
The if Statement
•
The Java if statement has the following
syntax:
if (condition)
statement;
If the boolean condition is true, the
statement is executed; if
Block Statements
• Several statements can be grouped together
into a block statement
– Blocks are delimited by braces
– A block statement can be used wherever a
statement is called for in the Java syntax
The if-else Statement
• An else clause can be added to an if
statement to make it an
if-else statement:
if (condition)
statement1;
else
Nested if Statements
• The body of an if statement or else clause
can be another if
statement
These are called nested if statements
See Football_Choice.java
Note: an else clause is matched to the
The while Statement
• A while statement has the following syntax:
while (condition)
statement;
If the condition is true, the statement is
executed; then the
condition is evaluated again
The while Statement
• If the condition of a while statement is false
initially, the statement is never executed
Therefore, we say that a while statement
executes zero or more times
Infinite Loops
• The body of a while loop must eventually
make the condition
false
If not, it is an infinite loop, which will
execute until the user
interrupts the program
This is a common type of logical error --
Program Development
• The creation of software involves four basic
activities:
–
–
–
–
establishing the requirements
creating a design
implementing the code
testing the implementation
• The development process is much more
involved that this, but these basic steps are a
Requirements
• Requirements specify the tasks a program
must accomplish (what to do, not how to do
it)
– They often address the user interface
– An initial set of requirements are often
provided, but usually must be critiqued,
modified, and expanded
– It is often difficult to establish detailed,
unambiguous, complete requirements
– Careful attention to the requirements can save
significant time and money in the overall
Design
• A program follows an algorithm, which is a
step-by-step process for solving a problem
• The design specifies the algorithms and data
needed
• In object-oriented development, it
establishes the classes, objects, and methods
that are required
• The details of a method may be expressed
in pseudo-code, which is code-like, but does
not necessarily follow any specific syntax
Implementation
• Implementation is the process of translating
a design into source code
• Most novice programmers think that writing
code is the heart of software development,
but it actually should be the least creative
• Almost all important decisions are made
during requirements analysis and design
• Implementation should focus on coding
details, including style guidelines and
Testing
• A program should be executed multiple
times with various input in an attempt to
find errors
• Debugging is the process of discovering the
cause of a problem and fixing it
• Programmers often erroneously think that
there is "only one more bug" to fix
• Tests should focus on design details as well
as overall requirements
Download