25
1 Object- Oriented Programming (CS243) Java Programming

1 Object- Oriented Programming (CS243) Java Programming

Embed Size (px)

Citation preview

Page 1: 1 Object- Oriented Programming (CS243) Java Programming

1

Object- Oriented Programming (CS243)

Java Programming

Page 2: 1 Object- Oriented Programming (CS243) Java Programming

Programming languages

• Some influential ones:– FORTRAN

• science / engineering

– COBOL• business data

– LISP• logic and AI

– BASIC• a simple language

Page 3: 1 Object- Oriented Programming (CS243) Java Programming

3

http://java.sun.com/

C

C++

C#

JAVA

1970

1979

1991

2000

JAVA

Page 4: 1 Object- Oriented Programming (CS243) Java Programming

4

Text Book

Introduction to Java Programming, Comprehensive Version (10th Edition) 

Page 5: 1 Object- Oriented Programming (CS243) Java Programming

TIOBE Programming Community Index for Feb2015Feb 2015 Programming Language

1 Java

2 C++

3 C#

4 Python

5 PHP

6 JavaScript

7 Visual Basic .NET

8 Perl

9 Objective-C

10 Assembly language

11 Ruby

12 Delphi

13 Visual Baseic

14 Pascal

15 Swift

16 Matlab

17 PL/SQL

Page 6: 1 Object- Oriented Programming (CS243) Java Programming

6

What can JAVA Do???Desktop Application

Web Application

Network Application

Page 7: 1 Object- Oriented Programming (CS243) Java Programming

7

Editions• Java Card for smartcards • Java Platform, Micro Edition (Java ME) — targeting environments with

limited resources.• Java Platform, Standard Edition (Java SE) — targeting workstation

environments.• Java Platform, Enterprise Edition (Java EE) — targeting large distributed

enterprise or Internet environments.

Java SE version history JDK 1.0 (January 23, 1996) JDK 1.1 (February 19, 1997) J2SE 1.2 (December 8, 1998) J2SE 1.3 (May 8, 2000) J2SE 1.4 (February 6, 2002) J2SE 5.0 (September 30, 2004) Java SE 6 (December 11, 2006) Java SE 7 (July 2011)

Page 8: 1 Object- Oriented Programming (CS243) Java Programming

8

Java is simple. Java is object-oriented. Java is platform-independent. Java embraces Distributed computing. Java is secure. Java is reliable. Java is multithreaded. Automatic memory management Java is free!

Advantages of JAVA

Disadvantages of JAVA

Slower memory-consuming Single-pattern language (Every thing is an object) statically typed language Easy to decompile (need java obfuscator)

Page 9: 1 Object- Oriented Programming (CS243) Java Programming

9

Assessment SchemeType of assessment Marks? Week NumberQuiz at lecture 5 marks Week 4Quiz at section 5 marks Week 5Practical exam at lab 10 marks Week 7Written Exam at lecture 10 marks Week 7Practical exam at lab 10 marks Week 11Written Exam at lecture 10 Marks Week 12Assignment 10 Marks Week 15Written Exam 40 Marks Final

Page 10: 1 Object- Oriented Programming (CS243) Java Programming

10

Source code is first written in plain text files ending with the .java extension. JAVA source files are compiled into .class files by the java compiler. The .class file contains bytecodes which is the machine language of the Java Virtual

Machine(Java VM). The JVM runs your application by running the .class file.

Through the Java VM, the same application is capable of running on multiple platforms.

Java Basic Information

class MyProgram{……..}

MyProgram.java

………………………….

MyProgram.class

Page 11: 1 Object- Oriented Programming (CS243) Java Programming

Compiling/running a program1. Write it.

– code or source code: The set of instructions in a program.

2. Compile it.• compile: Translate a program from one language to another.– byte code: The Java compiler converts your code into a format named byte

code that runs on many computer types.

3. Run (execute) it.– output: The messages printed to the user by a program.

source code compile

byte code run

output

Page 12: 1 Object- Oriented Programming (CS243) Java Programming

your first application!1. The Java SE Development Kit 7 (JDK 7).2. IDE( Integrated Development Environment).

12

• http://java.sun.com/javase/downloads/index.jsp JDK 7 : Java SE 7 Java SE 7 Documentation

1-JDK 7

2-IDE

Alternative :JDK7 & NetBeans Bundle

www.textpad.com

www.netbeans.org www.eclipse.org/

Page 13: 1 Object- Oriented Programming (CS243) Java Programming

13

Creating Your First Application1. Create a source file 2. Compile the source file into a .class file :The

Java programming language compiler (javac) takes your source file and translates its text into bytecodes.

(. class files are produced only if there are no compilation errors)

3. Run the program The Java application launcher tool (java) uses the Java virtual machine to run your application.

javac java

Page 14: 1 Object- Oriented Programming (CS243) Java Programming

14

A Simple Java Program

// this program prints “Hello World” to screenpublic class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } }

HelloWorld.java

Main method declaration

Statement Calling the method for printing to screen

Comment

Modifier

Keyword Identifier for Class name

Page 15: 1 Object- Oriented Programming (CS243) Java Programming

Syntax• syntax: The set of legal structures and commands that can be

used in a particular language.– Every basic Java statement ends with a semicolon ;– The contents of a class or method occur between { and }

• syntax error (compiler error): A problem in the structure of a program that causes the compiler to fail.Examples:– Missing semicolon– Too many or too few { } braces– Illegal identifier for class name– Class and file names do not match– ...

Page 16: 1 Object- Oriented Programming (CS243) Java Programming

16

A problem in the structure of a program that causes the compiler to fail and prevent the creation of the .class file.

Hello.java:2: <identifier> expected pooblic static void main(String[] args) { ^Hello.java:5: ';' expected}^2 errors

compiler output:

compiler error

1 public class Hello {2 pooblic static void main(String[] args) {3 System.owt.println("Hello, world!")4 }5 }

Page 17: 1 Object- Oriented Programming (CS243) Java Programming

Structure of a Java programpublic class name { public static void main(String[] args) { statement; statement; ... statement; }}

• Every executable Java program consists of a class,– that contains a method named main,

• that contains the statements (commands) to be executed.

class: a program

statement: a command to be executed

method: a named groupof statements

Page 18: 1 Object- Oriented Programming (CS243) Java Programming

The main method

• The main method is called automatically when the class is executed

• The main method signature is public static void main (String [] args) The argument of main method must be an array of

string ,however it can take any name The main must be public ,void and static

Page 19: 1 Object- Oriented Programming (CS243) Java Programming

A Java programpublic class Hello { public static void main(String[] args) { System.out.println("Hello, world!"); System.out.println(); System.out.println("This program produces"); System.out.println("four lines of output"); }}

• Its output:Hello, world!

This program producesfour lines of output

Page 20: 1 Object- Oriented Programming (CS243) Java Programming

System.out.println

• A statement that prints a line of output on the console.– pronounced "print-linn"– sometimes called a "println statement" for short

• Two ways to use System.out.println :

• System.out.println("text");Prints the given message as output.

• System.out.println();

Prints a blank line of output.

Page 21: 1 Object- Oriented Programming (CS243) Java Programming

Names and identifiers

• You must give your program a name.

public class GangstaRap {

– Naming convention: capitalize each word (e.g. MyClassName)– Your program's file must match exactly (GangstaRap.java)

• includes capitalization (Java is "case-sensitive")

• identifier: A name given to an item in your program.– must start with a letter or _ or $– subsequent characters can be any of those or a number

• legal: _myName TheCure ANSWER_IS_42 $bling$• illegal: me+u 49ers side-swipe Ph.D's

Page 22: 1 Object- Oriented Programming (CS243) Java Programming

Keywords

• keyword: An identifier that you cannot use because it already has a reserved meaning in Java.

abstract default if private this boolean do implements protected throw break double import public throws byte else instanceof return transient case extends int short try catch final interface static void char finally long strictfp volatile class float native super while const for new switch continue goto package synchronized

– i.e., You may not use char or while for the name of a class.

Page 23: 1 Object- Oriented Programming (CS243) Java Programming

Strings

• string: A sequence of characters to be printed.– Starts and ends with a " quote " character.

• The quotes do not appear in the output.

– Examples:

"hello""This is a string. It's very long!"

• Restrictions:– May not span multiple lines.

"This is nota legal String."

– May not contain a " character."This is not a "legal" String either."

Page 24: 1 Object- Oriented Programming (CS243) Java Programming

Escape sequences

• escape sequence: A special sequence of characters used to represent certain special characters in a string.

\t tab character\n new line character\" quotation mark character\\ backslash character

– Example:System.out.println("\\hello\nhow\tare \"you\"?\\\\");

– Output:\hellohow are "you"?\\

Page 25: 1 Object- Oriented Programming (CS243) Java Programming

Questions

• What println statements will generate this output?This program prints aquote from the Gettysburg Address.

"Four score and seven years ago,our 'fore fathers' brought forth onthis continent a new nation."

• What println statements will generate this output?A "quoted" String is'much' better if you learnthe rules of "escape sequences."

Also, "" represents an empty String.Don't forget: use \" instead of " !'' is not the same as "