การเรียกใช้คลาสในภาษาจาวา

ภาษาจาวา ถูกจัดเป็นภาษาเริ่มต้น
สำหรับเรียนรู้การเขียนโปรแกรม
โดยเฉพาะการโปรแกรมเชิงวัตถุ
Object oriented programming
.
นอกจากนี้ยังนิยมใช้เป็นเครื่องมือ
ในหลายแพลตฟอร์ม
ทั้งอุปกรณ์เคลื่อนที่ เว็บไซต์
และแอปพลิเคชันอย่างแพร่หลาย
.
สำหรับการโปรแกรมเชิงวัตถุ
ก็ออกแบบมาให้รองรับเทคนิคพื้นฐาน
และยังถูกพัฒนาให้มีโครงสร้าง
ที่เป็นมาตรฐาน ปรับใ้ช้ได้อย่างยืดหยุ่น
.
ช่วงนี้ได้ปรับบทเรียนออนไลน์
จึงเลือกโค้ดที่เกี่ยวกับ
การเรียกใช้ class และ method มาแบ่งปัน
ให้เห็นถึงการเรียกใช้คลาสและซับคลาส
.
จากตัวอย่างจะมี 3 คลาส
แต่ละคลาสมี method
โดยคลาสหลักมี method ชื่อ main
และแสดงผลผ่าน System.out
ปรากฎ output บน console
.
นำโค้ดไปทดสอบ
บน Online java compiler
จะทำให้เห็นการทำงานของ
constructor, super, และ this ได้
ลองเปรียบเทียบผลลัพธ์กับโค้ดกันได้
.
สรุปว่า ท่านใดที่ยังวนเวียน
อยู่ในยุคจาวา ยังสนใจเรื่องนี้อยู่
ลองนำโค้ดไปทดลอง หรือปรับปรุงได้ครับ
สามารถสืบค้นคำว่า
รหัสต้นฉบับเพื่อการศึกษา ก็ได้

j0404

https://fb.watch/qaxiS4cWN-/?mibextid=2JQ9oc

#javalanguage
#computerlanguage
#programming
#coding
#method
#algorithm

การทำให้ browser รุ่นใหม่ ใช้งาน Applet ของ Java

java verified
java verified

สำหรับห้องปฏิบัติการ หรือห้องสมุด หรือร้านเน็ต
ที่ให้บริการคอมพิวเตอร์ควรตั้งค่าอะไรบ้าง
นอกจากการแช่แข็งระบบ หรือเรียกคืนอัตโนมัติ
1. มีแผนการอัพเดทซอฟต์แวร์ในเครื่องทั้งหมด ว่าครั้งต่อไปทำเมื่อใด
2. ทำการ update flash ที่อยู่ใน browser แต่ละโปรแกรม
http://www.y8.com/tags/flash
https://support.mozilla.org/en-US/kb/why-do-i-have-click-activate-plugins
3. ติดตั้ง Firewall และปิดบริการทุกอย่าง
4. เข้าไปดู Plug-in ใน Browser ว่าตัวใดไม่ใช้ ก็ให้ลบออก
5. ติดตั้ง java plug-in และ IE Tab ใน chrome
http://www.java.com/en/
คลิ๊ก Do I have Java?
The Chrome browser does not support NPAPI plug-ins and
therefore will not run all Java content.
Switch to a different browser
(Firefox, Internet Explorer or Safari on Mac) to run the Java plug-in

https://chrome.google.com/webstore/detail/ie-tab/hehijbfgiekmjfkfjpbkbammjbdenadd?hl=en
http://java.com/en/download/installed8.jsp
Case : http://www.falstad.com/mathphysics.html
Case : http://www.echoecho.com/applets02.htm
How to : http://www.java.com/en/download/faq/java_webstart.xml
DOS>javaws https://docs.oracle.com/javase/tutorialJWS/samples/uiswing/ActionDemoProject/ActionDemo.jnlp
http://docs.oracle.com/javase/tutorial/uiswing/examples/misc/index.html
6. ปิดการจำทุกอย่าง ทั้ง data และ user ในโปรแกรม Browser

หลีกเลี่ยงการตรวจค่า null ตอนที่ 1 (แต่ตัวอย่างที่ยกมานี้ยังไม่หลีกเลี่ยงการตรวจสอบ)

person object
person object

เคยอ่าน blog ของ Somkiat Puisungnoen
เจ้าของโดเมน somkiat.cc ซึ่งคุณตุ้ยแนะนำมา
ชื่อโพสต์ “Java :: หลีกเลี่ยงการตรวจสอบค่า Null กันได้แล้ว
โดยมี code ตอนหนึ่งว่า
1. PersonDAO personDAO = new PersonDAO();
2. Person person = personDAO.getPersonByID(1);
3. if(person != null) {
4. person.setName(“My name”);
5. }

ซึ่งแนะนำการหลีกเลี่ยงการใช้ null ไว้ 2 วิธี
http://www.somkiat.cc/java-avoid-check-null-in-your-code/

1. บรรทัดแรก
สร้าง instace ชื่อ personDAO จากคลาส PersonDAO
คำว่า DAO มาจาก Data Access Object ทำหน้าที่เข้าถึงข้อมูล
ทำให้มี instace ไว้ใช้งานด้านข้อมูล และติดต่อกับฐานข้อมูล
2. บรรทัดที่สอง
สร้าง instace ชื่อ person จากคลาส Person
ซึ่งมีค่าต่าง ๆ ตามที่กำหนด หรือการประมวลผลที่สำคัญกับข้อมูล
3. บรรทัดที่สาม
ตรวจสอบว่ามี person หรือไม่
ถ้าเรียกใช้ทั้ง ๆ ที่เป็น null ก็จะ error
4. บรรทัดที่สี่
ถ้ามีก็จะกำหนดค่าให้กับ object ใน person
ตามหลัก set กับ get

นำแนวคิดของคุณสมเกียรติ มาทำให้โปรแกรมประมวลผลได้
โดยยังไม่หลีกเลี่ยงการตรวจค่า null แต่ใช้ if != null เหมือนตัวอย่างไปก่อน
1. คลาส PersonDAO ทำหน้าที่เข้าถึงฐานข้อมูลในเบื้องต้น
การ return ต้องกำหนดค่าอะไรสักอย่าง จึงต้องกำหนดเป็น null ไว้แต่แรก
ถ้าไม่กำหนดก็จะ compile ไม่ผ่าน เช่น Person person;
public class PersonDAO {
public Person getPersonByID(int personID) {
Person person = null;
if (personID < 10 && personID > 0) {
person = new Person();
person.setID(personID);
}
return person;
}
}

2. คลาส Person ทำหน้าที่โดยตรงในการเพิ่ม ลบ แก้ไขข้อมูล
public class Person {
private int id;
private String name;
public void setName(String s) { name = s; }
public void setID(int i) { id = i; }
public int getID() { return id; }
public String getName() { return name; }
}

3. คลาส Work ทำหน้าที่รับส่งข้อมูล ควบคุม และนำเสนอข้อมูล
public class Work {
public static void main(String args[]){
PersonDAO personDAO = new PersonDAO();
Person person1 = personDAO.getPersonByID(1);
if(person1 != null) {
person1.setName(“burin”);
System.out.println(person1.getID());
System.out.println(person1.getName());
}
Person person2 = personDAO.getPersonByID(11);
if(person2 != null) {
person2.setName(“tui”);
System.out.println(person2.getID());
System.out.println(person2.getName());
}
}
}
http://www.thaiall.com/class/

ตอนที่ 2 การใช้ try catch จับ Exception
http://www.thaiall.com/blog/burin/6560/

แก้ปัญหาบล็อกเว็บด้วย port 8080

p808030 ก.ย.52 รับแจ้งจากอาจารย์อวุโสว่าพบปัญหาเข้าเว็บเพจที่ใช้ frame ในบางเว็บไซต์ไม่ได้ ทดลองติดตั้ง java runtime 6 ปัญหาก็ไม่หายไป เมื่อ view source แล้วพบ error message ว่า browser ไม่สนับสนุน ก็คิดว่า ต้องลง browser รุ่นใหม่ จึงจะใช้งานได้ ลองติดตั้ง ie8 ก็ยังเข้าไม่ได้ ..
     อีกสักพัก ผมก็ไปทดสอบกับเครื่องในห้องปฏิบัติการ พบว่า เข้าเว็บไซต์ที่เป็นปัญหาได้ปกติด้วย account ของผมที่มีระดับเป็น admin จึงนึกขึ้นได้ว่า account ที่ใช้ทดสอบที่เครื่องอาจารย์อวุโสนั้น เป็น account ระดับ user เมื่อตรวจสอบลึกลงไปก็พบว่า สิ่งที่แตกต่างของเว็บไซต์ดังกล่าวกับเว็บไซต์ทั่วไปคือเปิด port 8080 ซึ่งเป็น default port ของ java server ทั่วไป เมื่อคุณอนุชิต ยอดใจยา เข้าไปยกเลิกการปิด port ดังกล่าวจาก dhcp server ก็มีผลให้ account ใดใดในระบบสามารถเข้าถึงเว็บไซต์ดังกล่าวได้
+ http://iutcerral.univ-lyon2.fr/conftool/
+ http://it.yonok.ac.th/anuchit/jre-6u14-windows-i586.zip
+ http://www.thaibg.com
+ http://ie6update.kapook.com/ie8_download.php