Chapter 1 Introduction to Computers, Programs, and Java
Objectives
·
To review
computer basics, programs, and operating systems
·
To represent
numbers in binary, decimal, and hexadecimal
·
To understand the
relationship between Java and the World Wide Web
·
To distinguish
the terms API, IDE, and JDK
·
To write a simple
Java program
·
To create,
compile, and run Java programs
·
To understand the
Java runtime environment
·
To know the basic
syntax of a Java program
·
To display output
on the console and on the dialog box
What
is a Computer?
CPU
Memory
Storage
Devices
Input
and Output Devices: Monitor
Communication
Devices
How
Data is Stored?
Data
of various kinds, such as numbers, characters, and strings, are encoded as a
series of bits (zeros and ones). Computers use zeros and ones because digital
devices have two stable states, which are referred to as zero and one
by convention. The programmers need not to be concerned about the encoding and
decoding of data, which is performed automatically by the system based on the
encoding scheme. The encoding scheme varies. For example, character ‘J’ is
represented by 01001010 in one byte.
A small number such as three can be stored in a single byte. If computer needs to store a large number that cannot fit
into a single byte, it uses a number
of adjacent bytes. No two data can
share or split a same byte. A byte is the minimum storage unit.
Programs
Computer
programs, known as software, are instructions to the computer.
You
tell a computer what to do through programs. Without programs, a computer is an
empty machine. Computers do not understand human languages, so you need to use
computer languages to communicate with them.
Programs
are written using programming languages.
Programming Languages
Machine
Language
Assembly
Language
High-Level Language
Popular High-Level Languages
FCOBOL
(COmmon Business Oriented Language)
FFORTRAN
(FORmula TRANslation)
FBASIC
(Beginner All-purpose Symbolic Instructional Code)
FPascal
(named for Blaise Pascal)
FAda (named for Ada Lovelace)
FC (whose
developer designed B first)
FVisual
Basic (Basic-like visual language developed by Microsoft)
FDelphi
(Pascal-like visual language developed by Borland)
FC++
(an object-oriented language, based on C)
FJava
(We use it in the book)
Compiling Source Code
A
program written in a high-level language is called a source program.
Since a computer cannot understand a source program, a program called a compiler
is used to translate the source program into a machine language program called
an object program. The object program is often then linked with other
supporting library code before it can be executed on the machine.
Compiling Java Source Code
You
can port a source program to any machine with appropriate compilers. The source
program must be recompiled, however, because the object program can only run on
a specific machine. Nowadays computers are networked to work together. Java was
designed to run object programs on any platform. With Java, you write the
program once, and compile the source program into a special type of object
code, known as bytecode. The bytecode can then run on any computer with a Java Virtual
Machine, as shown in Figure 1.5., the Java Virtual Machine is software that
interprets Java bytecode.
Operating Systems
The operating
system (OS) is a program that manages and controls a computer’s activities.
Windows is currently the most popular PC operating system. Application programs
such as an Internet browser and a word processor cannot run without an operating
system.
Why
Java?
Java,
Web, and Beyond
·
Java can be used
to develop Web applications.
·
Java Applets
·
Java Servlets and JavaServer Pages
·
Java can also be
used to develop applications for hand-held devices such as Palm and cell phones
Examples of Java’s Versatility
TicTacToe Standalone
TicTacToe Applet
SelfTest Website (using Java Servlets)
PDA and Cell Phone
Java’s History
·
James Gosling and
Sun Microsystems
·
Oak
·
Java, May 20,
1995, Sun World
·
HotJava
·
The first
Java-enabled Web browser
·
Early History
Website
Characteristics
of Java
Java
Is Simple
Java
Is Object-Oriented
Java
Is Distributed
Java
Is Interpreted
Java
Is Robust
Java
Is Secure
Java
Is Architecture-Neutral
Java
Is Portable
Java's
Performance
Java
Is Multithreaded
Java
Is Dynamic
JDK Versions
JDK
1.02 (1995)
JDK
1.1 (1996)
JDK
1.2 (1998)
JDK
1.3 (2000)
JDK
1.4 (2002)
JDK
1.5 (2004) a. k. a. JDK 5 or Java 5
JDK
Editions
Java Standard Edition
(J2SE)
J2SE can be used to develop
client-side standalone applications or applets.
Java Enterprise Edition (J2EE)
J2EE can be used to develop
server-side applications such as Java servlets and
Java ServerPages.
Java
Micro Edition (J2ME).
J2ME can be used to develop
applications for mobile devices such as cell phones.
This book uses J2SE to
introduce Java programming.
Java
IDE Tools
Borland
JBuilder
NetBeans
Open Source by Sun
Sun
ONE Studio by Sun MicroSystems
Eclipse
Open Source by IBM
A Simple Java Program
//This program prints
Welcome to Java!
public class Welcome {
public static void
main(String[] args) {
System.out.println("Welcome to Java!");
}
}
Anatomy of a Java Program
Comments
Package
Reserved
words
Modifiers
Statements
Blocks
Classes
Methods
The
main method
Comments
In
Java, comments are preceded by two slashes (//) in a line, or enclosed between
/* and */ in one or multiple lines. When the compiler sees //, it ignores all
text after // in the same line. When it sees /*, it scans for the next */ and
ignores any text between /* and */.
Package
The
second line in the program (package chapter1;)
specifies a package name, chapter1, for the class Welcome. Forte compiles the
source code in Welcome.java, generates Welcome.class, and stores Welcome.class
in the chapter1 folder.
Reserved
Words
Reserved
words or keywords are words that have a specific meaning to the compiler and
cannot be used for other purposes in the program. For example, when the
compiler sees the word class, it understands that the word after class is the
name for the class. Other reserved words in Listing 1.1 are public, static, and
void. Their use will be introduced later in the book.
Modifiers
Java
uses certain reserved words called modifiers that specify the properties of the
data, methods, and classes and how they can be used. Examples of modifiers are
public and static. Other modifiers are private, final, abstract, and protected.
A public datum, method, or class can be accessed by other programs. A private
datum or method cannot be accessed by other programs. Modifiers are discussed
in Chapter 6, “Objects and Classes.”
Statements
A
statement represents an action or a sequence of actions. The statement System.out.println("Welcome to Java!") in the program in Listing 1.1
is a statement to display the greeting "Welcome to Java!" Every
statement in Java ends with a semicolon (;).
Blocks
Classes
The
class is the essential Java construct. A class is a template or blueprint for
objects. To program in Java, you must understand classes and be able to write
and use them. The mystery of the class will continue to be unveiled throughout
this book. For now, though, understand that a program is defined by using one
or more classes.
Methods
What
is System.out.println? It is a method: a collection
of statements that performs a sequence of operations to display a message on
the console. It can be used even without fully understanding the details of how
it works. It is used by invoking a statement with a string argument. The string
argument is enclosed within parentheses. In this case, the argument is
"Welcome to Java!" You can call the same println
method with a different argument to print a different message.
Main
Method
The main
method provides the control of program flow. The Java interpreter executes the
application by invoking the main method.
The
main method looks like this:
public
static void main(String[] args) {
// Statements;
}
Displaying Text in a Message Dialog Box
You
can use the showMessageDialog method in the JOptionPane class. JOptionPane is
one of the many predefined classes in the Java system, which can be reused
rather than “reinventing the wheel.”
The showMessageDialog
Method
JOptionPane.showMessageDialog(null,
"Welcome to Java!",
“Display Message",
JOptionPane.INFORMATION_MESSAGE));
Two Ways to Invoke the Method
There
are several ways to use the showMessageDialog method.
For the time being, all you need to know are two ways to invoke it.
One
is to use a statement as shown in the example:
JOptionPane.showMessageDialog(null, x,
y, JOptionPane.INFORMATION_MESSAGE));
where x
is a string for the text to be displayed, and y is a string for the title of
the message dialog box.
The
other is to use a statement like this:
JOptionPane.showMessageDialog(null, x);
where x
is a string for the text to be displayed.
The exit Method
Prior
to JDK 1.5, you had to invoke System.exit() to terminate the program if the program used JOptionPane dialog boxes. Since JDK 1.5, it is not
necessary.
JBuilder IDE Interface
Creating a JBuilder
project
Creating a JBuilder project, cont.
Creating a JBuilder project, cont.
Creating a Java Program