java programming

30
JAVA PROGRAMMING PART I

Upload: aizza

Post on 06-Jan-2016

38 views

Category:

Documents


0 download

DESCRIPTION

JAVA PROGRAMMING. PART I. เกี่ยวกับจาวา. เป็นภาษาที่ถูกพัฒนาโดยบริษัทซันไมโครซิสเต็ม ( Sun Microsystems) ชื่อ “JAVA” มาจากชื่อกาแฟชนิดหนึ่งที่ทีมงานพัฒนาชอบดื่มกันเป็นประจำ พวกเราโดยส่วนใหญ่ได้สัมผัสและรู้จักจาวาจาดอินเตอร์เน็ต - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: JAVA PROGRAMMING

JAVA PROGRAMMING

PART I

Page 2: JAVA PROGRAMMING

เกี่��ยวกี่�บจาวา เป็�นภาษาที่ถู�กพั�ฒนาโดยบริ�ษ�ที่ซั�นไมโคริซั�สเต็�ม(Sun

Microsystems)

ชื่�อ “JAVA” มาจากชื่�อกาแฟชื่น�ดหน&งที่ที่มงานพั�ฒนาชื่อบด�มก�นเป็�นป็ริะจ)า

พัวกเริาโดยส+วนใหญ่+ได.ส�มผั�สและริ� .จ�กจาวาจาดอ�นเต็อริ1เน�ต็ แริกเริ�มเด�มที่ จาวาถู�กพั�ฒนาไว.ใชื่.งานส)าหริ�บเขียน

โป็ริแกริมขีนาดเล�กบนอ3ป็กริณ์1อ�เล�กที่ริอน�กส1 เพั�อให.การิเริยนริ� .ภาษาจาวาง+าย ที่างที่มงานจ&งก)าหนดริ�ป็

แบบค)าส�งให.คล.ายภาษาซัพัล�สพัล�ส ซั&งเป็�นภาษาที่น�กเขียนโป็ริแกริมโดยส+วนใหญ่+ค3.นเคย

Page 3: JAVA PROGRAMMING

Sun Microsystems

ในชื่+วงต็.น 1990 ต็ลาดเคริ�องใชื่.ไฟฟ5า มริาคาส�งและริะบบ คอมพั�วเต็อริ1ที่ควบค3มเคริ�องใชื่.ไฟฟ5าเหล+าน6ถู�กพั�ฒนาขี&6นเริ�อย ๆ

บริ�ษ�ที่ Sun Microsystems ซั&งป็ริะสบความส)าเริ�จในต็ลาดริะบบ เคริ�อขี+ายคอมพั�วเต็อริ1อย+างมากในต็อนน�6น เห�นว+าควริใชื่.ความได.

เป็ริยบขีองบริ�ษ�ที่ เริ+งพั�ฒนาเที่คโนโลย เพั�อย&ดคริองต็ฃาดเคริ�อง ใชื่.ไฟฟ5าที่มคอมพั�วเต็อริ1ควบค3มไว.ก+อน จ&งจ�ดที่ม Green Group

ขี&6นในป็9 1991 ม James Gosling เป็�นห�วหน.าที่)าการิพั�ฒนาริะบบ ซัอฟต็1แวริ1ส)าหริ�บควบค3มเคริ�องใชื่.ไฟฟ5าขีนาดเล�ก พัวกเขี.าสริ.าง

เคริ�องต็.นแบบที่เริยกว+า Star7 เป็�นริะบบ remote control ขีนาด ม�อถู�อ พัวกเขีาใชื่. C++ เขียนโป็ริแกริม Star7 ผัลที่ได.เป็�น

โป็ริแกริมที่ม�กจะที่)างานผั�ดพัลาดและล.มเหลวบ+อย ๆ จนสริ3ป็ว+าC++ ไม+เหมาะก�บงานน6 เพัริาะมขี.อจ)าก�ดหลายอย+าง เชื่+น เคริ�องใชื่.

ไฟฟ5ามหน+วยความจ)าน.อย และไม+มริะบบป็ฏิ�บ�ต็�การิ หน+วยป็ริะมวล ผัลที่ใชื่.ย�งมหลายเบอริ1หลายยห.อ และมชื่3ดค)าส�งไม+เหม�อนก�น จ&ง

เป็�นเหต็3ให.พัวกเขีาพั�ฒนาภาษาใหม+ ชื่�อ Oak ให.เป็�นภาษาที่ง+ายต็+อการิเริยนริ� .และใชื่.งาน

Page 4: JAVA PROGRAMMING

พั�ฒนากี่ารของภาษาจาวาจาวาต็�วแริกค�อ java 1.0 ที่ใชื่.ใน JDK 1.0 (ค�อชื่3ดเคริ�องม�อพั�ฒนาภาษาจาวาที่แจกฟริ ) ถู�กกล+าวว+าชื่.ากว+า C ป็ริะมาณ์ 20 เที่+า และ java 1.1 ได.พั�ฒนาความเริ�วขี&6น แต็+ก�ได.เพัยง 2 เที่+าขีอง java 1.0 ต็+อมาได.ออก JDK 1.2 ได.เป็ลยนชื่�อใหม+เป็�น Java 2 SDK 1.2 (Software Development Kit) โดยเวอริ1ชื่�นป็;จจ3บ�นอย�+ที่ Java 2 SDK 1.4 ซั&งที่างบริ�ษ�ที่ซั�นได.พั�ฒนา Java ให.มความเริ�วขี&6นเริ�อยๆ เพั�อแก.ไขีจ3ดบกพัริ+องเริ�องความเริ�วในการิที่)างานขีองภาษาจาวา โดยใชื่.เที่คโนโลยหลายๆ อย+างเชื่+น Just in Time (JIT) compiler ซั&งจะแป็ลงไบต็1โค.ด เป็�นเนที่ฟโค.ด ค�อโค.ดที่ถู�กคอมไพัล1โดยเฉพัาะส)าหริ�บโป็ริเซัสเซัอริ1น�6นๆ ก+อนเอ�กซัค�วต็1 ที่)าให.มความเริ�วเพั�มขี&6นถู&งหล�กส�บเที่+า ,Java HotSpot (เริ�มใชื่.ใน java 2 SDK 1.3) และล+าส3ดที่จ)าที่)าให.จาวามความเริ�วแบบส3ดยอดค�อใชื่. Java chip เป็�นโป็ริเซัสเซัอริ1

Page 5: JAVA PROGRAMMING

ข�อเด่�นของภาษาจาวา การิเขียนโป็ริแกริมภาษาจาวา เป็�นการิบ�งค�บให.เขียนโป็ริแกริมเชื่�ง

ว�ต็ถู3 (OOP: Object Oriented Programming) Java ค�อ platform independence หมายความว+าความสามาริถูขีอง

โป็ริแกริมที่เขียนด.วย java สามาริถูที่)างานได.ในริะบบป็ฏิ�บ�ต็�การิที่ต็+างก�น โดยไม+ต็.องด�ดแป็ลงแก.ไขี

Java ม garbage collector ที่)าให.โป็ริแกริม robust Java เขียนด.วยโค.ดน.อยกว+า C++ ที่โป็ริแกริมเดยวก�นป็ริะมาณ์ 4

เที่+า และใชื่.เวลาในการิเขียนโป็ริแกริม(development time) เริ�วกว+า C++ ที่โป็ริแกริมเดยวก�นป็ริะมาณ์ 2 เที่+า

Java มริะบบความป็ลอดภ�ยที่�6งริะด�บล+างและริะด�บบน ได.แก+ electronic signature, public and private key management, access control และ certificates

Page 6: JAVA PROGRAMMING

Definition of JAVA

2 appropriate definition for java Java is programming language Java is platform

2 forms of java Java application Java applet

Java script is not java, it is developed by Netscape that used in web and base on java.

Page 7: JAVA PROGRAMMING

Platform

Platforms like Operating System All application must depend on platform

Platform use for communicating with computer machine directly.

Example Microsoft Word run on Microsoft Window

Page 8: JAVA PROGRAMMING

Java is Platform

Java have own platform, named java virtual machine

So, java can run on any OS because of java virtual machine.

Write Once, Run anywhere

Page 9: JAVA PROGRAMMING

Java platform

Java program Java program Java program

Java virtual machine

Windows Unix Macintosh

Page 10: JAVA PROGRAMMING

สถาปั�ตยกี่รรมของจาวา

Java program

Java class file

Java Virtual Machine

Java API

Computer System

Java Platform

Page 11: JAVA PROGRAMMING

กี่ารแปัลงโค้�ด่ของภาษาจาวา Java program ค�อโป็ริแกริมที่เริาเขียนขี&6นโดยใชื่.ภาษาจาวา

จะอย�+ในริ�ป็เที่�กซั1 (text) ที่สามาริถูอ+านได. โดยชื่�อไฟล1จะมนามสก3ล .java เริาเริยกว+า ซัอริ1สโค.ด (Source code) ซั&งซัอริ1สโค.ดจะถู�กคอมไพัล1เป็�น java class file หริ�อ ไบต็1โค.ด ชื่�อไฟล1จะมนามสก3ล .class ซั&งอย�+ในริ�ป็ขีองค)าส�งที่ java virtual Machine เขี.าใจ

API ค�อโค.ดที่คอมไพัล1แล.ว ชื่+วนให.โป็ริแกริมแอกเซัสในส+วนขีอง system services ขีองริะบบป็ฏิ�บ�ต็�การิ ส+วน Java API ค�อกล3+มขีอง ready-made software components โดยริวมเป็�นไลบริาลขีองคลาส Java Virtual Machine จะโหลด Java API เม�อโป็ริแกริมจาวาถู�กริ�น

Page 12: JAVA PROGRAMMING

กี่ารแปัลงโค้�ด่ของภาษาจาวา

Java Program C Program

Java Virtual Machine Computer

Computer

Byte code Machine code

compile compile

interpret

Page 13: JAVA PROGRAMMING

Java Virtual Machine

ค�อส+วนต็�ดต็+อส�งงานโดยต็ริงต็+อคอมพั�วเต็อริ1 ภายในป็ริะกอบด.วย class loader และ Execution engine Class loader ที่)าหน.าที่โหลด class จากโป็ริแกริมและจาก

java API โดยที่ class loader มอย�+สองชื่น�ดค�อ bootstrap class loader หริ�อ system class loader เป็�น

ส+วนที่อย�+ใน java virtual machine เอง User-defined class loader

Execution Engine มหลายริ�ป็แบบ เชื่+น just in time, Adaptive optimizer

Page 14: JAVA PROGRAMMING

Java Virtual Machine

Java Virtual Machine

Class loader

Execution Engine

Operating System

User-defined ClassJava API’s class

Byte code

Native method

Page 15: JAVA PROGRAMMING

Starting with JAVA2

Download java compiler from web

Double click this icon to install java.

http://java.sun.com/j2se

Java virtual machine : JRE (Java Runtime Environment)Java Developer Kit : JDK

Page 16: JAVA PROGRAMMING

Java step

Java compiler is required

Edit source codeon textfile

<File-name>.java Compile source code

<File-name>.class Run onJava Virtual Machine

Page 17: JAVA PROGRAMMING

How to install

Double click icon of file that download Fill folder to install name “C:\java”

Page 18: JAVA PROGRAMMING

Your First Program in JAVA

Edit file name “Welcome1.java” at “C:\Myjava”

// A first program in Java.public class Welcome1 {

/* main method begins execution of Java application */ public static void main ( String args[] ) { System.out.println(“Welcome to Java Programming!”); } // end method main

} // end class Welcome1

Page 19: JAVA PROGRAMMING

Compile & Run

Go to DOS Go to directory “C:\Myjava” Type command for compile java program

Type command for run java

javac <file-name>.java

java <file-name>

Page 20: JAVA PROGRAMMING

Compile & Run (cont’d)

Page 21: JAVA PROGRAMMING

Write Once Run Anywhere

Page 22: JAVA PROGRAMMING

Java Application

// Printing multiple lines of text with a single statement.

public class Welcome_mline { // main method bigins execution of Java application public static void main ( String args[] ) { System.out.println(“Welcome\nto\nJava\nProgramming”);

} // end method main

} // end class Welcome_mline

What name of this application is ?

Page 23: JAVA PROGRAMMING

Java Application

// Printing multiple lines in a dialog box// Java extension packagesimport javax.swing.JOptionPane; // import class JOptionPanepublic class Welcome_dialog { // main method begins execution of Java application public static void main ( String args[] ) { JOptionPane.showMessageDialog( null, “Welcome to Java Programming”); System.exit(0); // terminate application

} // end method main} // end class Welcome_dialog

Page 24: JAVA PROGRAMMING

Java Application// An addition program.// Java extension packagesimport javax.swing.JOptionPane; // import class JOptionPanepublic class Addition { // main method begins execution of Java application public static void main( String args[] ){ String firstNumber; // first string entered by user String secondNumber; // second string entered by user int number1; // first number to add int number2; // second number to add int sum; // sum of number1 and number2 // read in first number from user as a String firstNumber = JOptionPane.showInputDialog(“Enter Number1:”); // read in second number from user as a String secondNumber = JOptionPane.showInputDialog(“Enter Number2:”); // convert numbers from type String to type int number1 = Integer.parseInt(firstNumber); number2 = Integer.parseInt(secondNumber); sum = number1 + number2; // add two numbers JOptionPane.showMessageDialog(null, “the sum is ”+ sum, “Results”, JOptionPane.PLAIN_MESSAGE); System.exit(0); // terminate application } // end method main} // end class Addition

Page 25: JAVA PROGRAMMING

Message Dialog types

JOptionPane.ERROR_MESSAGE JOptionPane.INFORMATION_MESSAGE JOpitonPane.WARNING_MESSAGE JOpitonPane.QUESTION_MESSAGE JOptionPane.PLAIN_MESSAGE

Page 26: JAVA PROGRAMMING

Java applet

Java language that must perform under web browser

There are 2 ways to run applet Command appletviewer HTML page

Page 27: JAVA PROGRAMMING

Java applet

Go to “c:\java\demo\applets” Enter director “TicTacToe” You can see file-name “example1.html” Type command

Appletviewer <filename>

Exampleappletviewer example1.html

Page 28: JAVA PROGRAMMING

Create Java applet

Edit file-name “HelloA.java”

//HelloA.java// java core packagesimport java.awt.*; // import all classpublic class HelloA extends java.applet.Applet { // draw text on Applet's background public void paint(Graphics g) { // draw a String at x 25 and y 50 g.drawString("Hello",25,50); } // end method paint} // end class HelloA

Page 29: JAVA PROGRAMMING

Create Java applet

Edit file-name “HelloA.html”

Type command “appletviewer HelloA.html”

<! HelloA.html><html> <body> This is my first Applet. <applet code="HelloA.class" width=200 height=200> </applet> </body></html>

Page 30: JAVA PROGRAMMING

Java Applet