Jaeki Song

1 / 53
About This Presentation
Title:

Jaeki Song

Description:

Understand the issues related to web-programming using JAVA ... Jbuilder, J , Forte, Visual Cafe. Compiler. Translate into bytecode ... – PowerPoint PPT presentation

Number of Views:59
Avg rating:3.0/5.0
Slides: 54
Provided by: JSo87
Learn more at: http://jsong.ba.ttu.edu

less

Transcript and Presenter's Notes

Title: Jaeki Song


1
Lecture 01 Introduction to Java Programming
  • Jaeki Song

2
Instructor
  • Name Jaeki Song
  • Office BA 712
  • Office Hours
  • Tuesday Thursday 1000-Noon or by appointment
  • Office Phone (806) 742-8036
  • E-mail jsong_at_ba.ttu.edu
  • Website http//jsong.ba.ttu.edu

3
Course Materials
  • Required Textbook
  • Deitel and Deitel, Java How to Program, 4th
    Edition, Prentice Hall

4
Course Objectives
  • Objectives
  • Introduce OOP using JAVA
  • Understand JAVA programming
  • Understand the issues related to web-programming
    using JAVA
  • Emphasize critical thinking about new developments

5
Grading
  • First Exam 20
  • Second Exam 20
  • Third Exam 30
  • Assignments 30

6
Course Structure
  • Fundamentals of programming
  • Object-oriented programming
  • Graphics programming
  • Developing comprehensive programming

7
Objectives
  • Basics of Programming Language
  • What is Java?
  • Introduction to Java Applications

8
Program Development Life Cycle (PDLC)
9
Structured Programming
  • Hierarchical Input Process Output (HIPO) chart
  • Algorithmic Thinking
  • Pseudocode
  • Flowchart
  • Storyboard

10
Top-Down Design
  • One method that is useful when defining the
    procedures to be used is termed Top-Down Design.
    With Top-Down Design you
  • break down a problem down into functional tasks
    or parts
  • break each part, or task, into sub-parts
  • continue the chunking-up process until the
    sub-parts, or sub-tasks, are very simple and
    easily described.

11
HIPO Chart
Main
Process
Initialization
Wrap-up
Declare Variable
Print Report
Read a record
Calculate
Accumulate total
Print Detail
Calculate average
Print total And averages
Calculate discount
Calculate Gross amount
Calculate net Amount due
12
Algorithmic Thinking
  • Correct
  • Using logical constructs and valid data in an
    organized way
  • The steps will be carried out correctly
  • The program will make suitable response
  • Efficient
  • The programs ability to deliver a results in a
    time short enough to be useful and in a space
    small enough
  • An algorithm can be defined in various ways. Two
    common ways include the use of pseudocode and
    flowchart

13
Pseudocode
  • MAIN MODULE
  • Call Initialization
  • Call Process
  • Call Output
  • END
  • PROCESS MODULE
  • Do While not End of File
  • Read a record
  • Call Calculate
  • Call Accumulate
  • Print Detail Line
  • End Do
  • RETURN
  • CALCULATE MODULE
  • If Hours gt 40 then
  • Call overtime
  • Else
  • uses English-like phrases to describe the
    instructions
  • List the actions using keywords
  • Depicts logical grouping or structures using
    indentation

14
Flow Chart
Process Symbol
Represent process
Makes data available for processing (input)
or Displaying (output) of process information
I/O Symbol
Decision symbol
Represents a decision that determines which Of
number of alternative paths is to be followed
Connector symbol
Represents any entry form, or exit to, another
part of the flow chart
Represents the beginning, the end, or a point of
Interruption or delay in a program
Terminal symbol
15
Storyboard
Interest Calculator
principalLabel
amtLabel
Principal
principalField
intLabel
intField
Interest Rate
Amount Paid
monthsLabel
amtlField
Months
monthslField
Calculate
Clear
calButton
clearButton
16
What is Java?
  • Computer programming language
  • Computer program
  • A set of instructions
  • Programming language
  • A set of words, symbols, and codes
  • Syntax
  • A set of grammar or rules that specify how the
    instructions are to be written

17
History of Java
  • Designed in the early of 1990s by Sun
    Microsystems
  • Provide animation and interactivity on the World
    Wide Web
  • Web browsers have provided the opportunities to
    run Java applets
  • The fastest growing language

18
Java Language
  • Standard language used for programming, creating
    applets, servlets, JavaBeans, and enterprise
    components
  • Java is simple
  • Java is object-oriented language
  • Java is distributed

19
Java Language
  • Java is interpreted
  • Need an interpreter to run Java program
  • The program are compiled into Java Virtual
    Machine (JVM) code called bytecode

Java Source Code
Java compiler
Java Bytecode Code
JVM
Java Interpreter
CPU
20
Java Language
  • Java is robust
  • Reliabile
  • Detect many problems
  • Java is secure
  • Java is platform-independent
  • Java is portable
  • Can be run on any platform without being
    recompiled
  • Java is multithreaded

21
Java Virtual Machine (JVM)
  • Interpreter for the Java programming language
  • a simple platform that all Java applications run
    on.
  • Comes with Java Development Kit (JDK)
  • Contains JVM and run-time system
  • Java 2 SDK
  • www.sun.com

22
Java Environment
  • Editor
  • Integrated Development Environment (IDE)
  • Jbuilder, J, Forte, Visual Cafe
  • Compiler
  • Translate into bytecode
  • For Sun Microsystems- javac (included in SDK)
  • Class loader produces .class file
  • Loading
  • Applications
  • loaded and executed using Java Interpreter java
    example.class
  • Applet
  • loaded in the browser and could be viewed by
    applet viewer using the html file in which the
    applet is placed.

23
Creating First Application
  • The Java 2 Platform, Standard Edition
  • JBuilder4 or 5

24
JBuilder Interface
Content pane
File tab
Main menu
Project toolbar
Project pane
Structure pane
File view tab
25
Example
/ Assignment 1 Printing on the screen
Programmer Jaeki Song Student ID
999-99-9999 Date September
2001 Program Name Address
/ public class Address public static void
main(String args) //method header
System.out.println( Jaeki Song)
System.out.println( 1234 89th Street)
System.out.println( Lubbock, TX,
79413)
26
Documentation
  • Comments
  • Block comment
  • / .. /
  • Line comment //
  • e.g.
  • / Assignment 1 Printing on the screen
  • Programmer Jaeki Song
  • Student ID 999-99-9999
  • Date September 2001
  • Program Name Address /

27
Java Class
  • Java program consists of pieces called classes
  • Existing classes in Java Class Libraries
  • Known as Java APIs (Applications Programming
    Interfaces)
  • Classes consists of pieces called methods
  • Perform tasks and return information

28
Java Class
  • A single class resides in a single Java source
    file with extension .java
  • public class Address
  • .
  • The source code is Address.java.
  • The name of the class is the name of the file
  • Class name and file name must match

29
Main Method
  • The class which contains the main() method is the
    class that starts running the program
  • Every Java application (not applet) has a main
    class

public class Address public static void
main(String args)
30
Access Modifier
  • Specifies the circumstances in which the class
    can be accessed
  • E.g. public class Address
  • .
  • Public indicates that this code can be access by
    all objects and can be extended or used as a
    basis for another class
  • The contents of the class must be enclosed in
    braces

31
Methods and Method Header
public static void main(String args) //method
header
  • Three parts
  • return value
  • method name
  • arguments lists

The method as accessible to all classes
This method is for class
32
Body Code
System.out.println( Jaeki Song)
System.out.println( 1234 89th Street)
System.out.println( Lubbock, TX, 79413)
Out is the object that represents the default
display
33
Variable
  • Used to store data
  • Variable declaration
  • To use a variable, you declare it by telling the
    compiler the name of the variable as well as what
    type of data it represents
  • datatype variableName
  • e.g
  • int x //Declare x
    to be an integer variable
  • double interest
  • char a //Declare a to be a character
    value
  • int x, y, z

34
Assignment
  • After a variable is declared, you can assign a
    value to it by using an assignment statement
  • variable expression
  • e.g.
  • x 1 //Assing 1 to variable x
  • x y 1 //assign the addition of y and 1 to
    x
  • You can declare variable and initialize it in one
    step
  • int x
  • x 1

int x 1
35
Constant
  • A constant represents permanent data that never
    changes
  • final datatype CONSTANTNAME VALUE

In java, the world final means that the constant
cannot be changed.
e.g. final double PI 3.14159
36
Numeric Data Types
  • The Java Built-In data type
  • int always 32-bit signed integer.
  • short 16-bit integer.
  • byte 8-bit integer (new).
  • long 64-bit singed integer.
  • float 32-bit floating-point number.
  • double 64-bit floating-point number.
  • char Unicode (16-bit, language independent
    character value, international standard.
  • boolean true or false, false is not 0 in Java

37
Numeric Operators
Operator Example Equivalent i8 i
i8 - f-8.0 f f-8.0 i8 i i8 / i/8 i
i/8 i8 i i8
38
Increment and Decrement Operators
  • Increment or decrement a variable by 1
  • X or X-- suffix
  • X or X prefix
  • Suffix operator the variable is used in the
    expression first, then incremented or decremented
    by 1
  • Prefix operator the variable is first
    incremented or decremented by 1, then used in the
    expression

39
Relational Operators
  • Relational operator

Operator Name
Example Answer lt less than
1 lt 2 true lt
less than or equal to 1 lt2
true gt greater than
1 gt 2 false gt
greater than or equal to 1 gt 2
false equal to
1 2 false ! not
equal to 1 ! 2 true
40
Boolean Operators
  • Boolean variable
  • A variable that holds a Boolean value (true or
    false)

Operator Name
Example ! Not and true true ? true
or false false ? false
41
Programming Style and Documentation
  • Appropriate Comments
  • Every program has the following block comment
    appear at the top of the source code file
  • / Programmer Jaeki Song
  • Course ISQS 6337
  • File Name Assign1XXXX.java
  • Description A brief description of the program
  • /

42
Programming Style and Documentation
  • Naming conventions
  • Make sure the meanings of the descriptive means
    you choose are straightforward
  • Names are case-sensitive
  • For variables and methods
  • Use lowercase
  • If the name consists of several words,
    concatenate them into one, making the first word
    lowercase and capitalizing the first letter of
    each subsequent word
  • e.g calculateSalary
  • For class names
  • Capitalize the first letter of each word
  • e.g ComputeSalary
  • For constants
  • All letters are capitalized
  • e.g. MAX_VALUE 10

43
Programming Style and Documentation
  • Proper indentation and spacing
  • Clear and easy to read
  • e.g.
  • public class Test
  • public static void main(String args)
  • System.out.println(Example)

44
Programming Errors
  • Syntax error
  • Result from errors in cod construction
  • E.g. mistyping, omitting some necessary
    punctuation, using an opening brace without a
    corresponding closing brace
  • Logical error
  • Occur when a program does not perform the way it
    was intended to
  • Run-time error
  • Cause a program to terminate abnormally
  • E.g.
  • Input error the user enters an unexpected input
    value that the program cannot handle
  • Division by zero

45
Formatting Output
  • Escape characters

Code
Concept
Result
\t
Horizontal tab
Moves insertion point eight spaces to the right
\b
Backspace
Moves insertion point one space to the left
\n
New line
Moves insertion point down one line and to the
left margin
\r
Carriage return
Moves insertion point to the left margin
\
Double quote
Used to print a double quote character
46
Using Java Swing Class
  • Refers to the new library of GUI
  • A component set that makes up all the objects of
    GUI
  • Displays output using windows or dialog boxes
  • Input Dialog and Output Dialog
  • Use packages
  • Predefined classes grouped into categories of
    related classes called packages (sometimes called
    java class libraries or java applications
    programming interface (API))
  • JOptionPane
  • Defined in a package called javax.swing

47
Output Dialog
  • showMessageDialog ( null, string)
  • A method of class JOptionPane
  • Two arguments
  • Syntax

JOptionPane.showMessageDialog(null, string)
48
Example Output Dialog
import javax.swing.JOptionPane //import class
JOptionPane public class Address public
static void main(String args) //method
header JOptionPane.showMessageDialog(
null, " Jaeki Song\n1234 89th
Street\n Lubbock,
TX, 79413") System.exit(0)
//terminate program
49
Output
50
Input Dialog
  • Uses predefined dialog box from class JOptionPane
    called input dialog
  • Allows the user to input a value for use in the
    program
  • Syntax

JOptionPane.showInputDialog( Enter first
integer)
51
Example Add Integer
import javax.swing.JoptionPane public class
AddInt public static void main (String
args) String number1, number2 //first
and second string entered by user int
numInt1, numInt2, sum number1
JOptionPane.showInputDialog(Enter first
number) number2 JOptionPane.showInputDialo
g(Enter second number) numInt1
Integer.parseInt(number1) numInt2
Integer.parseInt(number2) sum numInt1
numInt2 JOptionPane.showMessageDialog(null,
The sum is sum, Results,
JOptionPane.PLAIN_MESSAGE)
System.exit(0)
52
Output
53
JDK Packages
Package Name
Description
java.applet
Classes to facilitate using applets
java.awt
Abstract Window Toolkit classes to Facilitate
graphics user interfaces
java.net
Classes used for networking and client/ Server
applications
java.io
Classes to facilitate input and output
java.lang
Classes to facilitate data types,
threads, Strings, and others
java.util
Classes used for dates, vectors, and others
Write a Comment
User Comments (0)