วันอาทิตย์ที่ 23 ธันวาคม พ.ศ. 2555

Control Structure

1.คำสั่งควบคุมแบบมีการเลือกทำ
    
     1.1 การเลือกทำแบบทางเดียว ( If Statement )

รูปแบบ  if(condition){
              statement;
             }
ตัวอย่าง  int x=0,y=10;
               if(x<y)
                  System.out.println( x+ "is greater than " +y );

  1.2 การเลือกทำแบบสองทาง ( If-else )

รูปแบบ  if(condition){
              statement 1;
             }
             else{
              statement 2;
             }
ตัวอย่าง  int x=1,y=2,z;
               if(x>y){
               z=x;
              }
              else{
              z=y;
              }

  1.3 If-else-if


รูปแบบ  if(condition){
              statement ;
             }
             else if(condition){
              statement ;
             }
             ...
             else{
              statement ;
             }

ตัวอย่าง  if (score>=80)&&(score <=100){
                    System.out.println("Grade A");
               }
               else if(score>=70)&&(score<80){
                    System.out.println("Grade B");
               }
               else if(score>=60)&&(score<70){
                    System.out.println("Grade C");
               }
               else if(score>=50)&&(score<60){
                    System.out.println("Grade D");
               }
               else
                    System.out.println("Grade F");

  1.4 การเลือกทำแบบ switch


รูปแบบ  switch (variable)
              {
                 case  constant_1  :  statement; break;
                 case  constant_2  :  statement 2; break;
                 case  constant_3  :  statement 3; break;
                 ..............................................
                 case  constant_n  :  statement_n; break;
                 default : statement;
               }

ตัวอย่าง  switch (number)
               {
                  case 1 : System.out.println("You enter 1"); break;
                  case 2 : System.out.println("You enter 2"); break;
                  case 3 : System.out.println("You enter 3"); break;
                  default : System.out.println("That's not enter 1,2 or 3");
               }

2. คำสั่งควบคุมแบบมีการทำซ้ำ

     2.1 การวนรอบทำซ้ำด้วยคำสั่ง for

รูปแบบ  for ( initialization; condition; update; ) {
                      Statement;
                  }

ตัวอย่าง  for(int number=1; number<5; number++){
                     System.out.println(number+"");
                   }

    2.2 ลูป while (while statement)

รูปแบบ  while (test condition)
              {
                 Statement;
              }

ตัวอย่าง  int n=7;
               while (n>=0)
               {
                  System.out.println(""+n);
                  n=n-5;
                  System.out.println(""+n);
               }

   2.3 ลูป  do...while
รูปแบบ  do
              {
                  Statement;
              } while(condition);

ตัวอย่าง  int counter=1;
               do
               {
                   System.out.println("counter+"");
                }while(++counter<=10);

วันจันทร์ที่ 10 ธันวาคม พ.ศ. 2555

JAVA tutorial


วีดีโอสอนการเขียนโปรแกรมเชิงวัตถุเบื้องต้น

ไวยากรณ์ของ JAVA



1. การประกาศ Class

          [AccessSpecifier]  class  ClassName {

          }

การประกาศคลาสชื่อคลาสต้องเป็นชื่อเดียวกับโปรแกรม 

ตัวอย่างการประกาศ class

          public  class  StartJava{

          }

2. การประกาศ Attribute

          access modify  dataType  variebleName[.variebleName];

access modify คือการกำหนดขอบเขตการเข้าถึงข้อมูล โดยการใช้ public, private, protected นำหน้าชนิดตัวแปร กรณีที่ไม่ได้กำหนด modifier ใดๆใว้หน้า attribute จะทำให้ attribute หรือ method นั้นมีระดับการเข้าถึงเป็น package ซึ่งหมายความว่า class ที่อยู่ใน package อื่นจะไม่สามารถเข้าใช้งาน attribute เหล่านี้ได้ 

ตัวอย่างการประกาศ attribute

          public int Cost;

3. การประกาศ Method

          โปรแกรมทุกโปรแกรมจะต้องมี method ที่ชื่อว่า main ซึ่งถือว่าเป็น method หลักของโปรแกรม ใน method หนึ่งๆ จะประกอบด้วยสองส่วนใหญ่ๆ คือ ส่วนหัว (Header) และส่วน statement หรือที่เรีกว่า body ซึ่งเก็บการทำงานต่างๆเอาไว้ ดังตัวอย่าง method main() ดังต่อไปนี้

          public static void main (String args[]) { ...../*header*/

          System.out.println("Hello World"); ...../*body*/

          }

โดยส่วนหัวจะเขียนบรรทัดบนสุดของ method ส่วน body จะเป็นการรวบรวมการทำงานต่างๆ ซึ่งจะเขียนไว้ในเครื่องหมายปีกกา นอกจากนี้ส่วนหัวของ method ยังมีส่วนประกอบย่อยๆอีก สำหรับโครงสร้างทั่วไปของ method จะมีรูปแบบดังนี้

          Modifier  Return_type  MethodName (parameter_list){

                    ชุดคำสั่งหรือสเตดเมนท์ต่างๆ

                    return (ตัวแปร หรือข้อมูล)

          }

4. การประกาศ Object

          ClassName  ObjectName = new  ClassName(argument);
ตัวอย่างการสร้างออบเจกต์ box จากคลาส BoxArea

          BoxArea box = new BoxArea();

5. การเรียกใช้ Method

การเรียกใช้เมธอดของออปเจ็คมีรูปแบบ ดังนี้

          objectName.methodName([arguments]);

- objectName คือชื่อของออปเจ็คที่สร้างขึ้น

- methodName คือชื่อของเมธอดของออปเจ็คนั้น

- arguments คือค่าที่ต้องการส่งผ่านไปให้กับเมธอดของออปเจ็คนั้น

ตัวอย่าง

          s1.setName (“I Love JAVA”);


6. การเรียกใช้ Attribute

การเรียกใช้คุณลักษณะของออปเจ็คมีรูปแบบ ดังนี้

          objectName.attributeName;

ตัวอย่าง

          s1.name ;


Class&Object


Class&Object






Class คือ ต้นแบบข้อมูลหรือพิมพ์เขียวที่มีไว้เพื่อสร้าง Object Class นอกจากจะมีชื่อ Class ที่บอกคุณสมบัติของ Class นั้นแล้ว ยังมี Attribute และ Method ต่างๆ ซึ่งเป็นตัวอธิบายรายละเอียด และหน้าที่ต่างๆด้วย
Object คือ สิ่งที่สร้างมาจากคลาส ทุกสิ่งทุกอย่างในโลกนี้ คือ Object ทั้งที่เป็นรูปธรรมและนามธรรม
เราจะใช้ Object แทนสิ่งต่างๆในการแก้ปัญหาหรือเขียนโปรแกรม
Object ประกอบไปด้วย Attribute และ Method

Modularity

Modularity




คือ การแยกสลายสิ่งที่ซับซ้อนให้กลายเป็นส่วนย่อยเล็กๆที่สามารถจัดการได้ ซึ่งช่วยในการลดความยุ่งยากและซับซ้อนของปัญหาทำให้ง่ายต่อการจัดการ

Hierarchy

Hierarchy





คือการจัดกลุ่มสิ่งต่างๆตามระดับของ Abstraction โดยการใช้โครงสร้างแบบต้นไม้ (Tree structure)
Hierarchy ช่วยทำให้เราเห็นถึงความเหมือนกันหรือแตกต่างกันของสิ่งต่างๆได้ง่ายขึ้น เช่น ตัวอย่างในภาพคือ class ยานพาหนะ ทำ hierarchy โดยการกำหนดจำนวนล้อของยานพาหนะ

Encapsulation


Encapsulation



ข้อมูลบางอย่างมีความสำคัญจำเป็นต้องได้รับการป้องกันไม่ให้มีการเข้าถึงได้ง่าย หรือป้องกันไม่ให้วัถุอื่นใช้งานข้อมูลหรือแก้ไขข้อมูลนั้นได้ เพื่อป้องกันความเสียหายของโปรแกรมที่อาจจะเกิดขึ้นจากการที่มีการเปลี่ยนแปลงข้อมูล ซึ่งก็คือการทำ Encapsulation ให้กับข้อมูลนั่นเอง โดยการกำหนดขอบเขตการเข้าถึง attribute และ method ด้วยการกำหนด access modify ไว้หน้า attribute หรือ method แบ่งเป็น
1. การเข้าถึงแบบสาธารณะ (Public)  จะอนุญาตให้แอตทริบิวต์และเมธอดสามารถเข้าถึง หรือเรียกใช้ได้จากทุกๆ ส่วนของโปรแกรม รวมไปถึงโปรแกรมอื่นๆ ด้วย
2. การเข้าถึงแบบป้องกัน (Protected)  จะอนุญาตให้เฉพาะคลาสหรือวัตถุที่ได้รับการถ่ายทอด (Inheritance) จากคลาสดังกล่าวเท่านั้น ที่สามารถเรียกใช้แอตทริบิวต์และเมธอดดังกล่าวได้
3. การเข้าถึงแบบภายใน (Private)  จะมีเพียงคลาสดังกล่าวเท่านั้น  ที่สามารถเรียกใช้แอตทริบิวต์และเมธอดได้

วันอาทิตย์ที่ 9 ธันวาคม พ.ศ. 2555

Abstraction


 Abstraction 





คือ การที่เราสนใจที่จะสร้าง object โดยที่เรามองวัตถุที่เราต้องการจะสร้างแค่เพียงภายนอกหรือแค่ที่เรามองเห็นเท่านั้น โดยไม่ต้องสนใจถึงสิ่งที่อยู่ข้างในหรือการทำงานภายในของ object เช่น เราจะสร้าง object นาฟิกา เรามองนาฬิกาเห็นแค่ สี หน้าปัด การแสดงเวลา การตั้งปลุก เป็นต้น โดยที่เราไม่ต้องสนใจถึงระบบการทำงานที่ซับซ้อนด้านในของนาฬิกา
ซึ่งก็คือ การกำหนด attribute และ method ของวัตถุเท่าที่จำเป็นต้องรับรู้และใช้งาน โดยซ่อนส่วนที่เหลือเอาไว้ เพื่อลดความซับซ้อนของโปรแกรม