Introduction To Computers, Programs, and JAVA
Introduction To Computers, Programs, and JAVA
Chapter 1
Introduction To Computers,
Programs, and JAVA
Objectives
2
To understand computer basics, programs, and operating systems
(§§1.2–1.4).
To describe the relationship between Java and the World Wide Web
(§1.5).
To understand the meaning of Java language specification, API, JDK,
and IDE (§1.6).
To write a simple Java program (§1.7).
To display output on the console (§1.7).
To explain the basic syntax of a Java program (§1.7).
To create, compile, and run Java programs (§1.8).
To display output using the JOptionPane message dialog boxes (§1.9).
To become familiar with Java programming style and documentation
(§1.10).
To explain the differences between syntax errors, runtime errors, and
logic errors (§1.11).
What is a Computer?
3
Bus
Bus
Resolution
The screen resolution specifies the number of pixels in horizontal
and vertical dimensions of the display device. Pixels (short for
“picture elements”) are tiny dots that form an image on the screen. A
common resolution for a 17-inch screen, for example, is 1,024 pixels
wide and 768 pixels high. The resolution can be set manually. The
higher the resolution, the sharper and clearer the image is.
Dot pitch
The dot pitch is the amount of space between pixels, measured in
millimeters. The smaller the dot pitch, the sharper the display.
Communication Devices
10
A regular modem uses a phone line and can transfer data in a speed up to
56,000 bps (bits per second). A DSL (digital subscriber line) also uses a
phone line and can transfer data in a speed 20 times faster than a regular
modem. A cable modem uses the TV cable line maintained by the cable
company. A cable modem is as fast as a DSL. Network interface card
(NIC) is a device to connect a computer to a local area network (LAN).
The LAN is commonly used in business, universities, and government
organizations. A typical type of NIC, called 10BaseT, can transfer data at
10 mbps (million bits per second).
Bus
…
ADDF3 R1, R2, R3
Assembler …
1101101010011010
… …
Programming Languages
14
Language Description
Ada Named for Ada Lovelace, who worked on mechanical general-purpose computers. The Ada
language was developed for the Department of Defense and is used mainly in defense projects.
BASIC Beginner’s All-purpose Symbolic Instruction Code. It was designed to be learned and used easily
by beginners.
C Developed at Bell Laboratories. C combines the power of an assembly language with the ease of
use and portability of a high-level language.
C++ C++ is an object-oriented language, based on C.
C# Pronounced “C Sharp.” It is a hybrid of Java and C++ and was developed by Microsoft.
COBOL COmmon Business Oriented Language. Used for business applications.
FORTRAN FORmula TRANslation. Popular for scientific and mathematical applications.
Java Developed by Sun Microsystems, now part of Oracle. It is widely used for developing platform-
independent Internet applications.
Pascal Named for Blaise Pascal, who pioneered calculating machines in the seventeenth century. It is a
simple, structured, general-purpose language primarily for teaching programming.
Python A simple general-purpose scripting language good for writing short programs.
Visual Visual Basic was developed by Microsoft and it enables the programmers to rapidly develop
Basic graphical user interfaces.
Interpreting/Compiling Source Code
16
http://www.java.com/en/javahistory/index.jsp
Characteristics of Java
25
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
Characteristics of Java
26
Java Is Simple
Java is partially modeled on C++, but
Java Is Object-Oriented greatly simplified and improved.
Java Is Distributed Some people refer to Java as "C++--"
Java Is Interpreted because it is like C++ but with more
functionality and fewer negative
Java Is Robust
aspects.
Java Is Secure
Java Is Architecture-Neutral
Java Is Portable
Java's Performance
Java Is Multithreaded
Java Is Dynamic
Characteristics of Java
27
Java Is Simple Java is inherently object-oriented.
Although many object-oriented
Java Is Object-Oriented languages began strictly as procedural
Java Is Distributed languages, Java was designed from the
Java Is Interpreted start to be object-oriented. Object-
oriented programming (OOP) is a
Java Is Robust popular programming approach that is
Java Is Secure replacing traditional procedural
Java Is Architecture-Neutral programming techniques.
Java Is Portable One of the central issues in software
Java's Performance development is how to reuse code.
Object-oriented programming provides
Java Is Multithreaded
great flexibility, modularity, clarity, and
Java Is Dynamic reusability through encapsulation,
inheritance, and polymorphism.
Characteristics of Java
28
Java Is Simple
Distributed computing involves
Java Is Object-Oriented several computers working together
Java Is Distributed on a network. Java is designed to
Java Is Interpreted make distributed computing easy.
Since networking capability is
Java Is Robust
inherently integrated into Java,
Java Is Secure writing network programs is like
Java Is Architecture-Neutral sending and receiving data to and
Java Is Portable from a file.
Java's Performance
Java Is Multithreaded
Java Is Dynamic
Characteristics of Java
29
Java Is Simple
Java Is Object-Oriented You need an interpreter to run Java
Java Is Distributed programs. The programs are
compiled into the Java Virtual
Java Is Interpreted
Machine code called bytecode. The
Java Is Robust bytecode is machine-independent
Java Is Secure and can run on any machine that
Java Is Architecture-Neutral has a Java interpreter, which is part
of the Java Virtual Machine (JVM).
Java Is Portable
Java's Performance
Java Is Multithreaded
Java Is Dynamic
Characteristics of Java
30
Java Is Simple
Java Is Object-Oriented
Java Is Distributed
Java Is Interpreted
Java Is Robust Write once, run anywhere
Java Is Secure
With a Java Virtual Machine
Java Is Architecture-Neutral (JVM), you can write one program
Java Is Portable that will run on any platform.
Java's Performance
Java Is Multithreaded
Java Is Dynamic
Characteristics of Java
33
Java Is Simple
Java Is Object-Oriented
Java Is Distributed
Java Is Interpreted
Java Is Robust
Java Is Secure Because Java is architecture
Java Is Architecture-Neutral neutral, Java programs are portable.
Java Is Portable They can be run on any platform
Java's Performance without being recompiled.
Java Is Multithreaded
Java Is Dynamic
Characteristics of Java
34
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 Because Java is
architecture neutral, Java programs
Java's Performance are portable. They can be run on
Java Is Multithreaded any platform without being
Java Is Dynamic recompiled.
Characteristics of Java
35
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 Multithread programming is smoothly
integrated in Java, whereas in other
Java's Performance
languages you have to call procedures
Java Is Multithreaded specific to the operating system to
Java Is Dynamic enable multithreading.
Characteristics of Java
36
Java Is Simple
Java Is Object-Oriented
Java Is Distributed
Java Is Interpreted
Java Is Robust
Java Is Secure Java was designed to adapt to an
Java Is Architecture-Neutral evolving environment. New code can
be loaded on the fly without
Java Is Portable recompilation. There is no need for
Java's Performance developers to create, and for users to
Java Is Multithreaded install, major new software versions.
Java Is Dynamic New features can be incorporated
transparently as needed.
Terminology
37
There are many versions of Java SE. The latest, Java SE 11.
Oracle releases each version with a (JDK). For Java SE 11, the
Java Development Toolkit is called JDK 11 (also known as
Java 11 or JDK 11).
Examples:
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 1.6 (2006) a. k. a. JDK 6 or Java 6
JDK 1.7 (2011) a. k. a. JDK 7 or Java 7
Popular Java IDEs
40
NetBeans
Eclipse
A Simple Java Program
41
The Saving of Java Program
42
Note
The source file must end with the extension .java and must
have the same exact name as the public class name.
For example, the file for the source code in Listing 1.1 should be
named Welcome.java, since the public class name is Welcome.
Creating, Compiling, and Running Programs
43
Compiling Java Source Code
44
Class name
Main method
Statements
Statement terminator
Reserved words
Comments
Blocks
Class Name
51
Every Java program must have at least one class.
Each class has a name.
By convention, class names start with an uppercase letter.
In this example, the class name is Welcome.
Line 2 defines the main method. In order to run a class, the class
must contain a method named main.
The program is executed from the main method.
Caution
• Java source programs are case sensitive. It would be wrong, for
example, to replace main in the program with Main.
Special Symbols
57
{ …}
58
Note:
If you replace JOptionPane in line 9 with javax.swing.JOptionPane, you
don’t need to import it in line 4. javax.swing.JOptionPane is the full name for
the JOptionPane class.
Notes:
65
JOptionPane.showMessageDialog(null,
"Welcome to Java!",
"Display Message",
JOptionPane.INFORMATION_MESSAGE);
Two Ways to Invoke the Method
67
Appropriate Comments
Naming Conventions
Proper Indentation and Spacing Lines
Block Styles
Appropriate Comments
69
Indentation
Indent two spaces.
Spacing
Use blank line to separate segments of the code.
Block Styles
72
Runtime Errors
Causes the program to abort
Logic Errors
Produces incorrect result
Syntax Errors
74