Results 1 to 8 of 8

Thread: สรุปบทเรียนภาษา JAVA สำหรับผู้เริ่มต้นครับผม

  1. #1


    สรุปบทเรียนภาษา JAVA สำหรับผู้เริ่มต้นครับผม

    [hide=3]class คือ เสมือนแม่พิมพ์หรือแม่แบบในการสร้าง Objectต่างๆ ที่มีความหลากหลายทั้งนี้เราสามารถหยิบเอา Object ที่สร้างจาก Class หรือ Subclass นี้ไปทำอะไรได้อีกหลายอย่างโดยสั่งงานผ่าน Method ของมัน


    Object คือ เหมือนวัตถุชิ้นหนึ่งที่ถูกสร้างขึ้นโดย Classและดึงข้อมูลจาก Class นั้นๆมาใช้ทำให้ Objectมีลักษณะตาม Class ที่สร้างมันขึ้นมา


    Method คือ ฟังชันก์ที่อยู่ภายใน Class มีหน้าที่ทำตามคำสั่งที่อยู่ภายใน Method เมื่อถูกเรียกใช้งานแบ่งออกเป็น 3 ประเภทได้แก่

    1) Public methodเป็น method ที่ไม่ว่า Class ใดก็เรียกใช้งานได้

    2) Private methodเป็น method ที่จะถูกเรียกใช้งานได้จาก method ที่อยู่ใน Class เดียวกันเท่านั้น

    3) Protected methodเป็น method จะถูกเรียกใช้งานได้จาก method ที่อยู่ใน Class และ Subclass เดียวกันเท่านั้น


    Service คือ Method ประเภทหนึ่งที่ถูกประกาศมาเป็น public เพื่อให้ Class อื่นเรียกใช้งานได้

    Super Class คือ Class หลักที่เรานำมาเพิ่มส่วนต่อขยาย


    SubClass คือ Class ที่เรานำมาต่อขยาย Super Class


    Static คือ การประกาศล่วงหน้า โดยไม่จำเป็นต้องกระทำใน Method โดยเมื่อเราประกาศตัวแปรแบบ Static แล้ว เราก็สามารถนำตัวแปรนี้ไปใช้ได้ในทุก Method ใน Class นั้นๆ


    Finalคือ จบแล้ว เช่น ถ้าเป็นตัวแปรที่ประกาศมาเป็น Final ค่าของตัวแปรนั้นๆจะไม่สามารถเปลี่ยนแปลงได้อีก และ ถ้าเป็น Class ก็จะไม่สามารถสืบทอดClassนั้นๆได้ คือ ไม่สามารถมี SubClass ได้นั่นเอง

    Algorithm คือ วิธีการทำงานของตัวโปรแกรมนั้นๆสั้นๆง่ายๆได้ใจความแต่เข้าใจยาก

    Attributes คือ คุณสมบัติต่างๆของ Objects เช่นพิกัดของหุ่น สีของหุ่น


    Parametersคือ ค่าที่เราส่งไปเวลาที่เราเรียกใช้ Method, Service, Class ฯลฯ โดยค่า Parameters อาจมีหลายค่า โดยปกติแล้วจะคั่นด้วยเครื่องหมาย คอมม่า(Comar)


    GUI ย่อมาจากคำว่า Graphic User Interface คือส่วนที่เครื่องใช้ติดต่อกับผู้ใช้โดยมีรูปแบบเป็นGraphic


    IDE ย่อมาจากคำว่า Integrated Development Enviroment คือเครื่องมือที่ช่วยในการพัฒนาโปรแกรมโดยมีสิ่งอำนวยความสะดวกต่างๆ เช่นคำสั่ง Compile, Run ตัวอย่างของ IDE เช่น EditPlus, JCreator, Eclipse แต่ Notepad ไม่นับว่าเป็น IDE เนื่องจากตัว Notepad เอง ไม่มีเครื่องมืออำนวยความสะดวกสำหรับการเขียนโปรแกรมใดๆเลย


    ประเภทของ Error มีอะไรบ้าง ?


    -Compile Error เป็นประเภทที่ทำให้คนปวดหัวได้มากที่สุด เพราะส่วนมากเจอ Error ประเภทนี้แล้วจะแก้กันไม่ค่อยถูก Compile Error หมายถึง Error ที่เกิดขึ้นจากการ Compile เนื่องจากตัว Source Code มีปัญหา

    -Run-time Error อันนี้ส่วนมากจะไม่ค่อยเจอ Run-time Error คือ Error ที่เกิดขึ้นระหว่างการ Run ตัว Program แต่ Error ประเภทนี้สามารถดักจับเพื่อใช้คำสั่งอื่นแก้ไขได้ด้วยคำสั่ง Try Catch ตามประเภทของ Exception ดังจะเห็นว่าใน Packet ของ BeckerเวลาเกิดRun-time Error กับหุ่นยนต์ตัว Program จะไม่เอ๋อ แต่ตัวหุ่นยนต์จะแตกเป็นชิ้นๆแทน ตามที่มีคำสั่งแก้ไข

    -Intent Error เป็นประเภทที่แก้ไขได้ง่ายที่สุด เพราะเกิดจากการที่โปรแกรมออกมาแล้วไม่ได้ดั่งใจ



    ประเภทของ Comment มีอะไรบ้าง ?

    -One-line Comment ใช้สัญลักษณ์ // ในการเริ่ม โดย Comment ประเภทนี้จะมีผลตั้งแต่สัญลักษณ์ไปจนกว่าจะหมดบรรทัด

    -Multi-line Comment ใช้สัญลักษณ์ /* ในการหยุด มีผลตั้งแต่สัญลักษณ์เริ่มจนถึงสัญลักษณ์หยุด

    -Document Comment ใช้สัญลักษณ์ /** ในการเริ่ม และ*/ ในการหยุด ขอบเขตเช่นเดียวกับ Multi-line Comment แต่ว่าเวลา Compile แล้วรู้สึกว่าจะถูกใส่เข้าไปใน Documentด้วย



    ประเภทของตัวแปร มีอะไรบ้าง ?

    int ย่อมากจาก Integer เก็บตัวเลขจำนวนเต็ม,long มีผลเหมือนกันแต่ว่าเก็บค่าสูงสุดต่ำสุดได้มากกว่า Integer

    floatเก็บตัวเลขแบบมีทศนิยมได้,double มีทศนิยมได้เหมือนกันแต่ว่าเก็บค่าสูงสุดต่ำสุดได้มากกว่า float

    char เก็บตัวอักษรได้ 1 ตัวอักษร

    Boolean มีเพียง 2 ค่า คือ true กับ false

    String อันนี้ไม่ได้เป็นประเภทของตัวแปร แต่จัดเป็น Class ของตัวแปรเอาไว้เก็บชุดตัวอักษร อักขระต่างๆ

    คำสั่งตัดสินใจต่างๆ

    ประโยค if

    การใช้ if เป็นการเสนอทางเลือกให้กับการประมวลผล แบ่งเป็นสองทางจะเป็นทางไหนก็ขึ้นอยู่กับประโยคเงื่อนไขสำหรับทดสอบว่ามีค่าเป็นจริง หรือเป็นเท็จ

    ถ้าประโยคเงื่อนไขสำหรับทดสอบทางเลือกมีค่าเป็นจริง (True) ก็จะทำการประมวลผลในกลุ่มคำสั่งที่ 1 เพื่อให้ได้ผลลัพธ์ออกมา แต่ถ้าเป็นเท็จ (False) ก็จะเลือกทำในกลุ่มคำสั่งที่ 2 ซึ่งทำให้ได้ผลลัพธ์ที่แตกต่างกันออกมา

    ตัวอย่าง :if(karel.frontIsClear())

    { karel.move();

    }

    karel.turnLeft();


    นอกจากรูปแบบที่กล่าวมาข้างต้นแล้วก็ยังมีอีกหลายๆรูปแบบของ ifที่ให้ความหมายใกล้เคียงกัน เช่น ถ้าต้องการให้ประมวลผล ถ้าประโยคเงื่อนไขเป็นจริง แต่เมื่อประโยคเงื่อนไขเป็นเท็จก็ไม่ต้องทำอะไรเลย


    ตัวอย่าง: if(ประโยคเงื่อนไข)

    คำสั่ง ;


    นอกจากรูปแบบต่างๆ ข้างต้นแล้วถ้าต้องการให้ประมวลผลในกรณีต่างๆ มากกว่าหนึ่งคำสั่ง ดังนี้


    ตัวอย่าง:if(cat.canPickThing())

    { cat.turnLeft();

    }

    else { cat.turnRight();

    }

    cat.move();


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




    ประโยค while

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

    ตัวอย่าง : while(this.frontIsClear())

    { this.pickThing();

    this.move();

    }

    this.pickThing();


    ในบางกรณีอาจจะพบเหตุการณ์ที่เรียกว่า การวนลูปแบบไม่มีที่สิ้นสุดหรือเรียกเป็นภาษาอังกฤษว่า infinite loop ซึ่งเป็นสิ่งที่ผู้เขียนต้องระมัดระวัง เพราะอาจทำให้เกิดการทำงานที่ผิดพลาดได้


    สรุปก็คือ while นี้จะหยุดการประมวลผลโปรแกรมก็ต่อเมื่อประโยคเชิงเปรียบเทียบที่กำหนดไว้มีค่าเป็นเท็จ (ในทางตรงกันข้ามก็คือ ลูป while จะทำการประมวลผลไปเรื่อยๆ ตราบใดที่ประโยคเปรียบเทียบที่ว่านั้นยังคงมีความจริงเป็นจริงอยู่)


    การทำงานของ while คือเริ่มต้นจากการประมวลผลประโยคเงื่อนไขว่ามีค่าเป็นจริงหรือเป็นเท็จ ถ้าเป็นเท็จ กลุ่มคำสั่งต่างๆ ภายในจะไม่ถูกทำการประมวลผลเลยและจบการประมวลผล while ทันที แต่ถ้ามีค่าเป็นจริงกลุ่มคำสั่งภายใน whileนั้นก็จะถูกประมวลผลตามลำดับ จากนั้นประโยคเงื่อนไขก็จะประมวลผลเพื่อตรวจสอบค่าความจริงอีกครั้งและจบการประมวลผลเมื่อค่าความจริงเป็นเท็จ




    ประโยค do/while

    ในบางครั้งเราก็อาจมีความจำเป็นที่จะนำเอาประโยคเงื่อนไขไปไว้ข้างหลังจากการประมวลผลกลุ่มคำสั่ง แทนที่จะเอามาไว้ด้านบนสุดเหมือนกับที่ใช้ในลูป while ภาษา Java จึงกำหนดรูปแบบการวนซ้ำชนิดนี้ขึ้นมาให้ใช้โดยไม่ได้มีความแตกต่างจากลูป while มากนัก นอกเสียจากการย้าย while และเงื่อนไขทดสอบไปอยู่ด้านท้าย

    ตัวอย่าง : do

    {this.pickThing

    }while(this.frontIsClear())

    {this.pickThing();

    this.move();

    }

    this.pickThing();

    โดยสรุปก็คือ ลำดับของการประมวลผลที่มีการเปลี่ยนแปลงไปจากลูป while นั่นคือ กลุ่มคำสั่งภายใต้ จะถูกประมวลผลก่อนเป็นอันดับแรก ไม่ว่าค่าที่ได้เมื่อนำไปทดสอบกับประโยคเงื่อนไข จะให้ค่าเป็นเท็จตั้งแต่ครั้งแรกเลยก็ตาม หมายความว่ากลุ่มคำสั่งเหล่านั้นจะถูกประมวลอย่างน้อย 1 ครั้ง ผิดกับลูป whileที่จะไม่ทำอะไรเลยหากว่าค่าที่ได้จากประโยคเงื่อนไขนั้นเป็นเท็จ


    ประโยค for

    ประโยคควบคุมแบบลูปอีกชนิดที่จะกล่าวถึงก็คือ ลูป for ที่มีเทียบเท่ากับลูป while นั่นคือโปรแกรมไม่ได้มีประสิทธิภาพเพิ่มขึ้นจากการใช้ for มากกว่าการใช้ while แต่อย่างใด เพียงแต่ว่าในการแก้ปัญหาบางปัญหานั้น เมื่อเขียนด้วยลูป forจะทำได้ง่ายกว่าการใช้ลูป while อีกทั้งยังง่ายต่อการทำความเข้าใจของผู้อ่านโปรแกรมด้วย

    ตัวอย่าง : public void turnRight

    { for (int turns = 0; turns < 3; turns = turns + 1)

    { this.turnLeft();

    }

    }[/hide]
    [size=4]
    ไม่มีิ่งใด ได้มาโดยไร้ซึ่งความ "พยายาม"[/size]

    [size=2]Computer Engineering Gu วิศวะ[/size]

    [img]http://www.ping-timeout.de/sig/143.jpg[/img]

  2. #2
    Junior Member
    Join Date
    Feb 2008
    Posts
    0


    ผมกำลังเริ่มเรียน อยู่ ยังหาแนวทางไม่ได้

  3. #3
    Junior Member
    Join Date
    May 2009
    Location
    Chiangmai
    Posts
    7


    Thumbs down

    ขอท้วงบทความนิดนึงนะครับ

    แต่ Notepad ไม่นับว่าเป็น IDE เนื่องจากตัว Notepad เอง ไม่มีเครื่องมืออำนวยความสะดวกสำหรับการเขียนโปรแกรมใดๆเลย[/b]
    ปัจจุบันมี Notepad++ นะครับเป็น IDE หรือตัว Editor ที่จัดว่าเจ๋งอย่างมากมาย ได้ครบทุกภาษาเลยครับ แต่ที่ทำไม่ได้คือการ compile

    เพราะไม่จัดว่าเปน compiler อยู่แล้วนะครับ

    ตัวนี้ขอบอกว่าเจ๋งมากมาย เพราะผมก็ใช้อยู่ประจำ

    ซึ่งหาโหลดได้จาก ที่นี่ครับ

    [hide=1]http://www.filehippo.com/download_notepad/[/hide]

  4. #4
    Junior Member
    Join Date
    Jun 2009
    Posts
    0


    กะลังหาคู่มือเบื้งต้นอยู่พอดี

    เวปนี่ผู้ที่ต้องการเริ่มต้นศึกษาไม่มีสิทธิ์เลยเหรอเนี่ย

  5. #5
    Administrator asylu3's Avatar
    Join Date
    Jun 2000
    Location
    Thailand
    Posts
    3,554


    กะลังหาคู่มือเบื้งต้นอยู่พอดี

    เวปนี่ผู้ที่ต้องการเริ่มต้นศึกษาไม่มีสิทธิ์เลยเหรอเนี่ย[/b]
    เป็นตัวอย่างการ Post ที่ผิดกฏปกติถ้าพบจะแบนทันที แต่ถือว่าเป็นมือใหม่ระงับการ Post 14 วันให้ไปอ่านกกฏกติกาพลางๆก่อนนะครับ

  6. #6
    Junior Member
    Join Date
    Mar 2008
    Posts
    0


    นอกจาก notepad หรือ Notepad++ แล้วยังมี

    Super Editor ที่น่าสนใจสำหรับ เซียนและมือใหม่ JAVA คือ

    [hide=1]Netbean ซึั่งเป็น Freeware IDE Editor

    และมีชุด Library สำเร็จรูปให้เราสามารถดึงมาใช้งานได้ทันทีไม่ต้องเขียนขึ้นมาใหม่

    สนใจศึกษาและดาวน์โหลดได้ที่

    http://www.netbeans.org/downloads/index.html
    [/hide]

  7. #7
    Junior Member
    Join Date
    Jun 2009
    Posts
    10


    กำลังศึกษา Java อยู่พอดีเลยครับ เป็นประโยชน์มาก พื้นฐานยังไม่แน่นเท่าไหร่ครับ ขอรับไปศึกษาก่อนน่ะครับ

  8. #8
    Junior Member
    Join Date
    Jun 2009
    Posts
    5


    กำลังหาความรู้เรื่องนี้อยู่พอดีเลย คับ ยังไงก็ จะพยายามศึกษาดูฮะ

Similar Threads

  1. Java, Java, Java, Object-Oriented Problem Solving
    By Black_Phoenix in forum E-Book, Video หรือบทความทั่วไปด้าน Computer
    Replies: 0
    Last Post: 25-02-2008, 11:55 PM
  2. Pro Java 6 3D Game Development: Java 3D, JOGL, JInput and JOAL APIs
    By HomHuan in forum E-Book, Video หรือบทความทั่วไปด้าน Computer
    Replies: 0
    Last Post: 24-09-2007, 05:03 PM
  3. Apress Pro Java 6 3D Game Development Java 3D JOGL JInput and JOAL APIs
    By SheLLniX in forum E-Book, Video หรือบทความทั่วไปด้าน Computer
    Replies: 0
    Last Post: 21-09-2007, 02:52 AM
  4. Replies: 0
    Last Post: 19-06-2007, 04:38 PM
  5. Java, Java Applet, Java Script ต่างกันยังไง?
    By cms-design in forum Non computer knowledge
    Replies: 0
    Last Post: 01-01-1970, 07:00 AM

Members who have read this thread : 0

Actions : (View-Readers)

There are no names to display.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •