1. Introduction to
Java Programming
Y. Daniel Liang
Edited by Hoàng Văn Hậu – VTC Academy – THSoft co.,ltd
https://play.google.com/store/apps/developer?id=THSoft+Co.,Ltd
3. Course Objectives
Upon completing the course, you will understand
– Create, compile, and run Java programs
– Primitive data types
– Java control flow
– Methods
– Arrays (for teaching Java in two semesters, this could be the end)
– Object-oriented programming
– Core Java classes (Swing, exception, internationalization,
multithreading, multimedia, I/O, networking, Java
Collections Framework)
VTC Academy THSoft Co.,Ltd 3
4. Course Objectives, cont.
You will be able to
– Develop programs using Eclipse IDE
– Write simple programs using primitive data
types, control statements, methods, and arrays.
– Create and use methods
– Write interesting projects
VTC Academy THSoft Co.,Ltd 4
5. Session 01 Introduction to Java
and Eclipse
What Is Java?
Getting Started With Java Programming
– Create, Compile and Running a Java
Application
VTC Academy THSoft Co.,Ltd 5
6. What Is Java?
Java language programming market
VTC Academy THSoft Co.,Ltd 6
7. History
James Gosling and Sun Microsystems
Oak
Java, May 20, 1995, Sun World
HotJava
– The first Java-enabled Web browser
JDK Evolutions
J2SE, J2ME, and J2EE (not mentioned in the
book, but could discuss here optionally)
VTC Academy THSoft Co.,Ltd 7
8. 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
VTC Academy THSoft Co.,Ltd 8
9. Java IDE Tools
Forteby Sun MicroSystems
Borland JBuilder
Microsoft Visual J++
NetBean by Oracle
IBM Visual Age for Java
Eclipse by Sun MicroSystems
VTC Academy THSoft Co.,Ltd 9
10. Getting Started with Java
Programming
A Simple Java Application
Compiling Programs
Executing Applications
VTC Academy THSoft Co.,Ltd 10
11. A Simple Application
Example 1.1
//This application program prints Welcome
//to Java!
package chapter1;
public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to Java!");
}
}
Source Run
NOTE: To run the program,
install slide files on hard
VTC Academy THSoft Co.,Ltd
disk. 11
12. Creating and Compiling Programs
Create/Modify Source Code
On command line
– javac file.java
Source Code
Compile Source Code
i.e. javac Welcome.java
If compilation errors
Bytecode
Run Byteode
i.e. java Welcome
Result
If runtime errors or incorrect result
VTC Academy THSoft Co.,Ltd 12
13. Executing Applications
On command line
– java classname
Bytecode
Java Java Java
Interpreter Interpreter Interpreter
...
on Windows on Linux on Sun Solaris
VTC Academy THSoft Co.,Ltd 13
14. Example
javac Welcome.java
java Welcome
output:...
VTC Academy THSoft Co.,Ltd 14
15. Compiling and Running a Program
Where are the files
Welcome.java
stored in the
c:example directory?
chapter1 Welcome.class
Welcome.java~
chapter2 Java source files and class files for Chapter 2
.
.
.
chapter19 Java source files and class files for Chapter 19
VTC Academy THSoft Co.,Ltd 15
16. Anatomy of a Java Program
Comments
Package
Keywords
Variables – Data type
Operators
Control flow
If else statement
VTC Academy THSoft Co.,Ltd 16
19. Keywords (reserved words)
http://en.wikipedia.org/wiki/List_of_Java_keywords
VTC Academy THSoft Co.,Ltd 19
20. Blocks
A pair of braces in a program forms a
block that groups components of a
program.
public class Test {
public static void main(String[] args) { Class block
System.out.println("Welcome to Java!"); Method block
}
}
VTC Academy THSoft Co.,Ltd 20
21. Data Types
byte 8 bits
short 16 bits
int 32 bits
long 64 bits
float 32 bits
double 64 bits
char 16 bits
VTC Academy THSoft Co.,Ltd 21
22. Constants
final datatype CONSTANTNAME = VALUE;
final double PI = 3.14159;
final int SIZE = 3;
VTC Academy THSoft Co.,Ltd 22
23. Operators
+, -, *, /, %, ++, --, +=, -=, *=, /=, ^, &, |
5/2 yields an integer 2.
5.0/2 yields a double value 2.5
5 % 2 yields 1 (the remainder of the
division)
VTC Academy THSoft Co.,Ltd 23
24. Arithmetic Expressions
3 4x 10 ( y 5)( a b c) 4 9 x
9( )
5 x x y
is translated to
(3+4*x)/5 – 10*(y-5)*(a+b+c)/x + 9*(4/x + (9+x)/y)
VTC Academy THSoft Co.,Ltd 24
25. Shortcut Assignment Operators
Operator Example Equivalent
+= i+=8 i = i+8
-= f-=8.0 f = f-8.0
*= i*=8 i = i*8
/= i/=8 i = i/8
%= i%=8 i = i%8
VTC Academy THSoft Co.,Ltd 25
26. Increment and
Decrement Operators
suffix
x++; // Same as x = x + 1;
prefix
++x; // Same as x = x + 1;
suffix
x––; // Same as x = x - 1;
prefix
––x; // Same as x = x - 1;
VTC Academy THSoft Co.,Ltd 26
27. Increment and
Decrement Operators, cont.
int i=10; Equivalent to
int newNum = 10*i;
int newNum = 10*i++;
i = i + 1;
int i=10; Equivalent to
i = i + 1;
int newNum = 10*(++i);
int newNum = 10*i;
VTC Academy THSoft Co.,Ltd 27
28. Variables
// Compute the first area
radius = 1.0;
area = radius*radius*3.14159;
System.out.println("The area is “ +
area + " for radius "+radius);
// Compute the second area
radius = 2.0;
area = radius*radius*3.14159;
System.out.println("The area is “ +
area + " for radius "+radius);
VTC Academy THSoft Co.,Ltd 28
29. Declaring Variables
int x; // Declare x to be an
// integer variable;
double radius; // Declare radius to
// be a double variable;
char a; // Declare a to be a
// character variable;
VTC Academy THSoft Co.,Ltd 29
31. 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.”
Source Run
VTC Academy THSoft Co.,Ltd 31
33. Actions on Eclipse
Create, build, run welcome.java and
welcomeBox.java
Rewrite demo
Calcule this expression with a = b = c = 2.5;
x = y = z = 8.7
3 4x 10 ( y 5)( a b c) 4 9 x
9( )
5 x x y
VTC Academy THSoft Co.,Ltd 33
34. Actions on Eclipse
Problem ax + b = 0
Problem ax^2 + bx + c = 0
Input data by user. (JOptionPane)
VTC Academy THSoft Co.,Ltd 34
35. Action on class
Teacher
– hauc2@yahoo.com
– 0984380003
– https://play.google.com/store/search?q=thsoft+co&c=apps
Captions
Members
VTC Academy THSoft Co.,Ltd 35