csc 111 java programming i. java programming: from problem analysis to program design, second...
TRANSCRIPT
![Page 1: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/1.jpg)
CSC 111CSC 111Java Programming Java Programming II
![Page 2: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/2.jpg)
Java Programming: From Java Programming: From Problem Analysis to Program Problem Analysis to Program
Design, Second EditionDesign, Second Edition
22
2-6
Instructor – Salwa Hamad Al-JasserInstructor – Salwa Hamad Al-Jasser Office – 54 / 20Office – 54 / 20 Office hours - postedOffice hours - posted
![Page 3: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/3.jpg)
Java Programming: From Java Programming: From Problem Analysis to Program Problem Analysis to Program
Design, Second EditionDesign, Second Edition
33
3 lectures3 lectures 1 tutorial1 tutorial 1 lab1 lab
![Page 4: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/4.jpg)
Java Programming: From Java Programming: From Problem Analysis to Program Problem Analysis to Program
Design, Second EditionDesign, Second Edition
44
Course grade:Course grade:
Midterms – 15% each Midterms – 15% each Quizes -- 10% Quizes -- 10%
Lab – 20%Lab – 20%
Final – 40% Final – 40%
![Page 5: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/5.jpg)
JJava ava PProgramming:rogramming:
From Problem Analysis to Program From Problem Analysis to Program Design,Design,
Second EditionSecond Edition
D.S. MalikD.S. Malik
![Page 6: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/6.jpg)
Java Programming: From Java Programming: From Problem Analysis to Program Problem Analysis to Program
Design, Second EditionDesign, Second Edition
66
Chapter 1: Chapter 1: An Overview of An Overview of Computers and Programming Computers and Programming LanguagesLanguages
![Page 7: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/7.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 7
Evolution of Programming Languages
High-level languages make programming easier. Closer to spoken languages. Examples:
Basic FORTRAN COBOL C/C++ Java
![Page 8: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/8.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 8
History Of Java
Developed by Sun Microsystems – a company known for its workstations .
Java is well known for developing internet applications. it is used to : Create web pages with dynamic and interactive content. Develop large –scale enterprise applications. Enhance the functionality of WWW servers . Provide applications for customer devices ( ex . Cell phones) .
Java programs can run from a web browser.
![Page 9: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/9.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 9
Basics of Java Environment
The environment The language Java applications programming Interface API Various class libraries
![Page 10: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/10.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 10
Processing a Java ProgramA Java program undergoes several stages :1. Editing : use java code and save in a text file named className .java ( source program ).
2. Compiling : the compiler checks the source program for any syntax errors then translates the program into code understood by interpreter called bytecode saved in a file named className.class
3. Loading : the .class file is loaded into computer main memory for execution, and connected to all classes.
4. Verifying : to validate and secure against damage .
5. Interpreting :the Interpreter reads and translates each bytecode instruction into machine language and then executes it , one instrucion at a time .
![Page 11: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/11.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 11
Processing a Java Program
![Page 12: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/12.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 12
Processing a Java Program
Java Virtual Machine (JVM): A hypothetical computer developed to make Java programs machine independent ( i.e run on many different types of computer platforms ).
Bytecode is the machine language for the JVM .
![Page 13: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/13.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 13
Processing a Java Program
Two types of Java programs:
applications : standalone programs stored and executed on a local computer .
applets : small programs stored on remote computers that users connect to via a WWW browser. Applets are loaded into the browser , executed then discarded .
![Page 14: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/14.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 14
Example of a Java Program
A simple java application: an application executes using the java interpreter.Example : // This prints a line of text public class Welcome { public static void main (String args[] )
{System.out.println(“ welcome to java”) ;
}}
![Page 15: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/15.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 15
Example of a Java Program
// single line comment /* */ multiple line comment Every java program must have at least one class . Each class begins with a class declaration that
defines data and methods for the class . The class name here is Welcome , and contains a
method main () Welcome is an identifier.
![Page 16: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/16.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 16
Java Identifiers
Names of things. Such as methods, class names ..
Consists of:
Letters
Digits
The underscore character (_)
The dollar sign ($)
Must begin with a letter, underscore, or the dollar sign. (i.e does not begin with a digit )
Java is case sensitive . A and a are different.
![Page 17: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/17.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 17
Java Program- class definiton
Always begin a class name with a capital letter .
The class definition should be saved in a file that contains the class name .( i.e Welcome.java )
A file cannot contain two public classes.
public static void main (String args[]) is a part of every java application program.
![Page 18: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/18.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 18
Java Program- class definiton
Java applications automatically begin executing at main ().
The parentheses () after main indicate that main is a method .
Class definitions normally contain one ore more methods.
One of those methods must be called main .
The void before main () means that main will not return any info .
![Page 19: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/19.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 19
A Java Program
public class ASimpleJavaProgram { public static void main(String[] args) { System.out.println("My first Java program."); System.out.println("The sum of 2 and 3 = " + 5); System.out.println("7 + 8 = " + (7 + 8)); } }
Class name
Java
o/p
stmts
Body of class
Heading of method main
![Page 20: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/20.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 20
A Java Program
A java output statement causes the program to evaluate whatever is in the parentheses and display the result on screen .
Anything in double quotation marks, called string, evaluates to itself.
+ is used to concatenate the strings . The system automatically converts the number 5 into a string ,joins that string with the first string ,and displays it .
![Page 21: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/21.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 21
A Java Program
The parentheses around 7+8 causes the system to add the numbers 7 and 8 ,resulting in 15 .
The number 15 is then converted to string 15 and joined with string “7+8”= “ .
Sample Run:
My first Java program.
The sum of 2 and 3 = 5
7 + 8 = 15
![Page 22: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/22.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 22
A Java Program
The basic unit of a java program is a class. Every class consists of one or more methods . A method is a set of statements that accomplish
something . A java class must contain one main method if it is
an application . Execution always begins with method main in java
application program.
![Page 23: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/23.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 23
Internet ,WWW and Java
Internet : is an interconnection of networks that allows computers around the world to communicate with each other .
In 197o’s , the US DOD developed techniques to interlink networks , i.e communication protocols so that networked computers could communicate
Internet WWW uses s/w programs that enable users to view
documents on any computer over the internet
![Page 24: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/24.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 24
Internet ,WWW and Java
The primary language of web is HTML , a simple language for laying out and linking documents .
HTML is not capable of interacting with users except to collect info via simple forms .
Java applets make the web responsive and interactive
![Page 25: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/25.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 25
Programming Methodologies
Two basic approaches to programming design:
Structured design
Object-oriented design
![Page 26: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/26.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 26
Structured Design
1. A problem is divided into smaller sub-problems.
2. Each sub-problem is analyzed, solved and a solution for this sub-problem is obtained.
3. The solutions of all sub-problems are combined to solve the overall problem.
4. Is called structured programming , top-down design approach, or modular programming .
![Page 27: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/27.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 27
Object-Oriented Design (OOD)
In OOD, a program is a collection of interacting objects.
An object consists of data and operations.
Steps in OOD:
1. Identify the objects which form the basis of the solution , then determine how these objects interact with each other .
Example : write a program that automates the video rental process for a video store .
The two main objects are : 1- video
2- customer
![Page 28: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/28.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 28
Object-Oriented Design (OOD)
Steps in OOD:
2. Specify the relevant data for each object and the possible operations to be performed on that data .
Example : for the video object
o the data might be :
movie name ,Starring actors ,and Number of copies in stock.
o The operations on video object might include :
checking the name of the movie , reducing the # of copies in stock by 1 after renting a copy .
![Page 29: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/29.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 29
Object-Oriented Design (OOD)
Each object consists of data and operations on those data
The final program is a collection of interacting objects.
![Page 30: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/30.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 30
Problem-Analysis-Coding-Execution Cycle
Algorithm: A step-by-step, problem-solving process in which a solution is arrived at in a finite amount of time.
![Page 31: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/31.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 31
Problem-Solving Process
1. Analyze the problem: Outline solution requirements and design an algorithm.
2. Implement the algorithm in a programming language (Java) and verify that the algorithm works.
3. Maintain the program: Use and modify if the problem domain changes.
![Page 32: CSC 111 Java Programming I. Java Programming: From Problem Analysis to Program Design, Second Edition 2 2-6 Instructor – Salwa Hamad Al-Jasser Office](https://reader036.vdocuments.us/reader036/viewer/2022062800/56649e025503460f94aed7f6/html5/thumbnails/32.jpg)
Java Programming: From Problem Analysis to Program Design, Second Edition 32
Problem-Analysis-Coding-Execution Cycle