Issuu on Google+

Java Programming

Java Basics

Incheon Paik

Java

1

Computer Industry Lab.


Contents ? ? ? ? ? ? ? ? ? ? ? ? ?

Java

Background Java Virtual Machine Application & Applet Class & Object 3 Principles of Object Oriented Programming Start up Java Variables & Assign String & Character Arithmetic Operator & Expression Type Conversion Comment Array Keywords 2

Computer Industry Lab.


Background / History ?

Sun Microsystems Inc. ? James Gosling

?

1990, “Green Project” 1991, Develop the Language for Household Products => To General Developing Language

?

?

? ?

Java

Java ? James Gosling, Arthur Van Hoff, Andy Bechtolsheim ? Coffee Materials in Indonesia Write once, Run everywhere Spread Rapidly through WWW and Internet

3

Computer Industry Lab.


Byte Code and Java Virtual Machine ?

Existing Development Environment

Binary File Compiler(Pentium)

Source Code

Binary File Compiler(PowerPC)

Run Java

PowerPC Binary File

%cc Hello.c –o Hello % Hello

Pentium

Compiler(SPARC)

SPARC

Binary Code 4

Computer Industry Lab.


Byte Code and Java Virtual Machine ?

Java Development Environment

Java Interpreter Java Compiler

(Pentium)

Pentium

Java Code

Java ByteCode

(Independent on Platform)

Java Compiler

(PowerPC)

Java Interpreter

PowerPC Java Interpreter

%javac Hello.java Hello.class created

Run Java

JVM

SPARC

Java Compiler

% java Hello

(SPARC) Byte Code 5

Computer Industry Lab.


Java Program ?

Java Application Program ? Application ? Program written in general programming language ?

Java

Applet ? Program running in Web Browser Environment ? Can be viewed by appletviewer or Web browser with JVM

6

Computer Industry Lab.


Class and Object

Java

?

Object ? Memory Space to Define State and Operation ? Instance of Class

?

Class ? Template of Creating Object

7

Computer Industry Lab.


3 Principles of Object Oriented Programming ?

?

?

Encapsulation ? Control Access the data and method in program code Inheritance ? Inherit the data and methods of parent class Polymorphism Shape

getArea()

Shape Obj = new Ellipse(); Obj.getArea();

Ellipse

Rectangle

Triangle Which Area?

getArea()

Java

getArea()

getArea()

8

Computer Industry Lab.


Java Class Library ? ? ? ? ? ? ? ? ?

Java

java.applet : Applet related java.awt : Abstract Window Toolkit java.awt.event : Event process from awt component java.awt.image : Image processing java.beans : JavaBeans Component java.io : File or Network I/O Support java.lang : Java Language Support java.net : Network related functions java.util : Utility function

9

Computer Industry Lab.


Java 2 SDK ?

Java 2 Software Development Kit (Java 2 SDK) ? Java Application or Applet Development and Running Environment

?

Java 2 Runtime Environment (JRE) ? Java Running Environment

?

Java 2 Standard Edition Java 2 Micro Edition Java 2 Enterprise Edition

? ?

Java

10

Computer Industry Lab.


Java 2 SDK ?

Java 2 Software Development Kit (Java 2 SDK) ? Java Application or Applet Development and Running Environment

?

Java 2 Runtime Environment (JRE) ? Java Running Environment

?

Java 2 Standard Edition Java 2 Micro Edition Java 2 Enterprise Edition

? ?

Java

10

Computer Industry Lab.


Start Java Application Java

C

Class Name

Main Function

“Hello.java” Main method class Hello { public static void main(String args[]) { System.out.println(“Hello World”); }

% javac Hello.java

Run

% java Hello

Result

Java

Compile

“hello.c” void main() { printf(“Hello World\n”); }

% cc hello.c –o hello

% hello

Hello World

11

Computer Industry Lab.


Variable and Assign ? ?

Java

Variable Type ? char ? boolean ? byte ? short ? int ? long ? float ? double

16bits Unicode character data Boolean Variable 8 bits signed integer 16 bits signed integer 32 bits signed integer 64 bits signed integer 32 bits signed floating point number 64 bits signed floating point number

12

Computer Industry Lab.


Variable and Assign Variable Declaration type varName;

float x, y, x;

Value assign varName = value; int num = 100; long m = 21234234L double type : .5 0.8 9e-2 -9.3e-5 float type : 1.5e-3f;

Java

13

Computer Industry Lab.


String and Character ?

String : sequence of character String s = “Enter an integer value: ” ; Char c = ‘A’; Unicode

?

Concatenation Operator ‘+’

String s = “Lincoln said: ” + “\” Four score and seven years ago\”” ;

Result : Lincoln said: “Four score and seven years ago”

Java

14

Computer Industry Lab.


Arithmetic Operator ?

Java

Operators ? + - * / % ? += -= *= /= %= ? ++ -5/2 ? 2 Why isn’t it 2.5 ? 5%2 ? 1 4/2 ? 2 4%2 ? 0 ? count * num + 88 / val – 19 % count ? j += 6; ? j = j + 6;

15

Computer Industry Lab.


Type Conversion in Expression char ch; int i; float f; double outcome; ch = ‘0’; i = 10; f = 10.2f; outcome = ch * i / f; int float double

double

Yes

No

double

float Yes

No

float

long Yes

long

Java

16

No

int

Computer Industry Lab.


Type Conversion in Assignment Widening Conversion byte b = 127; int i; i = b; ? Narrowing Conversion byte b; int i = 258; b = (byte) i; ? Wrong Conversion byte b; int i = 127; b = i; ? Right Conversion (But data may be lost) byte b; int i = 127; b = (byte) i; ?

Type Casting

Java

17

Computer Industry Lab.


Comment ?

?

?

Java

Single Line Comment ? int i = 10 ; // i is counter Multiple Line Comment /* Some comments */ Documentation Comment /** Documentation Comment */

18

Using “javadoc� Tool, make document

Computer Industry Lab.


Arrays ( One Dimensional) Definition of One Dimensional Array type VarName[] int ia[];

Assign Range to One Dimensional Array varName = new type[size] ia = new int[10];

Declaration of One Dimensional Array with Range type varName[] = new type[size] int ia[] = new int[10];

Java

19

Computer Industry Lab.


Arrays ( One Dimensional) Number of elements in Array varName.length

Initialization of One Dimensional Array Type varName[] = {e0, ‌ , en}; int j[] = {0, 1, 2, 3, 4, 5}; int k[]; K = j;

Example 1.15

Java

20

Computer Industry Lab.


Arrays ( Multi-Dimensional) Definition of Two Dimensional Array type VarName[][]; float fa[][];

Assign Range to Two Dimensional Array varName = new type[size1][size2]; fa = new float[2][3];

Declaration of Two Dimensional Array with Range type varName[][] = new type[size1][size2]; float fa[] = new float[2][3];

Java

21

Computer Industry Lab.


Arrays ( Two Dimensional) Number of elements in Multi-Dimensional Array varName.length

Number of Raw

Number of elements in Each elements of Multi-Dimensional Array varName[index].length

Initialization of Multi-Dimensional Array Type varName[][] = {{e00, … , e0n}, {e10,… ,e1y}, {e20, … , e2z}};

Example 1.16

Java

22

Computer Industry Lab.


Java Keywords ?

Java

47 Java Keywords abstract boolean break byte case catch char class const* continue default do

double else extends final finally float for goto* if implements import instanceof

int interface long native new package private protected public return short static

23

super switch synchronized this throw throws transient* try void volatile while

Computer Industry Lab.


Exercise ?

?

Step 1 ? Refer this lecture slide #11 Step 2 (How to make & run Applet) ?

(1) Make Applet Program import java.awt.Graphics; public class HelloWorldApplet extends java.applet.Applet { public void paint (Graphics g) { g.drawString(“Hello World!�,5,25); } } // end of Applet

? ?

(2) Compile(using javac) to create HelloWorldApplet.class (3) Create HTML file (ex; HelloWorld.html) to include applet <applet code="HelloWorldApplet.class" width="150" height="25">

?

Java

(4) Run Applet using Appletviewer or Applet enabling Web browser % appletviewer HelloWorld.html

24

Computer Industry Lab.


Exercise ?

?

Java

Step 3 (Type Conversion) ? Refer this lecture slide #16,17 Step 4 (Array) ? Refer this lecture slide #22

25

Computer Industry Lab.


java