4. ตัว อย่า งโปรแกรมที่ท ุก คำา สัง อยู่ใ น
่
เมธอด main()
public class AllInMain {
public class AllInMain {
public static void main(String args[]) {
public static void main(String args[]) {
double score = Math.random()*100;
double score = Math.random()*100;
if (score >= 80) {
if (score >= 80) {
System.out.println("Grade is A");
System.out.println("Grade is A");
} else if (score >= 70) {
} else if (score >= 70) {
System.out.println("Grade is B");
System.out.println("Grade is B");
} else if (score >= 60){
} else if (score >= 60){
System.out.println("Grade is C");
System.out.println("Grade is C");
} else if (score >= 50){
} else if (score >= 50){
System.out.println("Grade is D");
System.out.println("Grade is D");
} else {
} else {
System.out.println("Grade is F");
System.out.println("Grade is F");
}}
}}
}}
5. ตัว อย่า งโปรแกรมที่ใ ช้ห ลัก การเชิง
ออปเจ็ค
public class NumericalClass {{
public class NumericalClass
public void calculate() {{
public void calculate()
double score == Math.random()*100;
double score Math.random()*100;
if (score >= 80) {{
if (score >= 80)
System.out.println("Grade is A");
System.out.println("Grade is A");
}} else if (score >= 70) {{
else if (score >= 70)
System.out.println("Grade is B");
System.out.println("Grade is B");
}} else if (score >= 60){
else if (score >= 60){
System.out.println("Grade is C");
System.out.println("Grade is C");
}} else if (score >= 50){
else if (score >= 50){
System.out.println("Grade is D");
System.out.println("Grade is D");
}} else {{
else
System.out.println("Grade is F");
System.out.println("Grade is F");
}}
}}
}}
-----------------------------------------------------------------
-----------------------------------------------------------------
-------------------------
-------------------------
public class MyMain {
public class MyMain {
public static void main(String args[]) {{
public static void main(String args[])
NumericalClass obj == new NumericalClass();
NumericalClass obj new NumericalClass();
obj.calculate();
obj.calculate();
6. ตัว อย่า งโปรแกรมที่ท ุก เมธอดอยู่
ในคลาสเดีย วกัน
public class NumericalClassV1 {
public class NumericalClassV1 {
public void calculate() {
public void calculate() {
double score = Math.random()*100;
double score = Math.random()*100;
if (score >= 80) {
if (score >= 80) {
System.out.println("Grade is A");
System.out.println("Grade is A");
} else if (score >= 70) {
} else if (score >= 70) {
System.out.println("Grade is B");
System.out.println("Grade is B");
} else if (score >= 60){
} else if (score >= 60){
System.out.println("Grade is C");
System.out.println("Grade is C");
} else if (score >= 50){
} else if (score >= 50){
System.out.println("Grade is D");
System.out.println("Grade is D");
} else {
} else {
System.out.println("Grade is F");
System.out.println("Grade is F");
}}
}}
public static void main(String args[]) {
public static void main(String args[]) {
NumericalClassV1 obj = new NumericalClassV1();
NumericalClassV1 obj = new NumericalClassV1();
obj.calculate();
obj.calculate();
}}
}}
14. ตัว อย่า งโปรแกรมที่มีก ารส่ง
argument ที่เ ป็น ออปเจ็ค
import java.util.*;
import java.util.*;
public class StudentV1 {
public class StudentV1 {
String id;
String id;
String name;
String name;
Date dob;
Date dob;
public void setDOB(Date d) {
public void setDOB(Date d) {
dob = d;
dob = d;
}}
public Date getDOB() {
public Date getDOB() {
return dob;
return dob;
}}
}}
-----------------------------------------------------------------
-----------------------------------------------------------------
-------------------------
-------------------------
public class TestStudentV1 {
public class TestStudentV1 {
public static void main(String args[]) {
public static void main(String args[]) {
StudentV1 s1 = new StudentV1();
StudentV1 s1 = new StudentV1();
Date d1 = new Date(16,12,1980);
Date d1 = new Date(16,12,1980);
s1.setDOB(d1);
s1.setDOB(d1);
18. ตัว อย่า งโปรแกรมที่แ สดงการ
เปลี่ย นแปลงค่า ของ argument
import java.util.*;
import java.util.*;
public class ArgumentPassing {
public class ArgumentPassing {
public void method1(int x) {
public void method1(int x) {
x = 3;
x = 3;
}}
public void method2(Date d) {
public void method2(Date d) {
d.setDate(1);
d.setDate(1);
d.setMonth(1);
d.setMonth(1);
d.setYear(2002);
d.setYear(2002);
}}
public int method3() {
public int method3() {
return 0;
return 0;
}}
19. ตัว อย่า งโปรแกรมที่แ สดงการ
เปลี่ย นแปลงค่า ของ argument
public static void main(String args[]) {
public static void main(String args[]) {
int x = 4;
int x = 4;
ArgumentPassing obj = new ArgumentPassing();
ArgumentPassing obj = new ArgumentPassing();
Date d1 = new Date(16,12,1980);
Date d1 = new Date(16,12,1980);
obj.method1(x);
obj.method1(x);
System.out.println("x = "+x);
System.out.println("x = "+x);
obj.method2(d1);
obj.method2(d1);
System.out.println("Date = "+d1);
System.out.println("Date = "+d1);
obj.method3();
obj.method3();
}}
}}
56. ตัว อย่า ง เมธอดที่แ สดงการใช้
instanceof
public void printInfo(Student s) {
public void printInfo(Student s) {
if (s instanceof PhDStudent) {
if (s instanceof PhDStudent) {
System.out.println("PhD Student");
System.out.println("PhD Student");
} else if (s instanceof GradStudent) {
} else if (s instanceof GradStudent) {
System.out.println("Graduate Student");
System.out.println("Graduate Student");
} else if (s instanceof FullTimeStudent) {
} else if (s instanceof FullTimeStudent) {
System.out.println("Full-Time Student");
System.out.println("Full-Time Student");
} else if (s instanceof PartTimeStudent) {
} else if (s instanceof PartTimeStudent) {
System.out.println("Part-Time Student");
System.out.println("Part-Time Student");
} else if (s instanceof Student) {
} else if (s instanceof Student) {
System.out.println("Student");
System.out.println("Student");
}}
63. ตัว อย่า งโปรแกรมแสดงการเรีย ก
ใช้ constructor
public class Student {
public class Student {
private String id;
private String id;
private String name;
private String name;
public Student(String ID,String n) {
public Student(String ID,String n) {
id = ID;
id = ID;
name = n;
name = n;
}}
}}
public class TestConstructor {
public class TestConstructor {
public static void main(String args[]) {
public static void main(String args[]) {
Student s = new Student();
Student s = new Student(); //illegal
//illegal
Student s = new Student("1122","Somchai");
Student s = new Student("1122","Somchai");
}}
}}
64. คำา สั่ง new()
มีข ั้น ตอนการทำา งานดัง นี้
• กำา หนดเนื้อ ที่ใ นหน่ว ยความจำา ให้ก ับ ออปเจ็ค
• กำา หนดค่า เริ่ม ต้น ให้ก ับ คุณ ลัก ษณะของออปเจ็ค
• กำา หนดค่า ของคุณ ลัก ษณะของออปเจ็ค ตามคำา สั่ง
กำา หนดค่า ที่ป ระกาศไว้
• เรีย กใช้ constructor
ตัว อย่า งเช่น
public class MyDate {
private int day = 1;
private int month = 1;
private int year = 2000;
public MyDate(int d,int m,int y) {
day = d;
month = m;
year = y;
}
}
71. ตัว อย่า ง คลาสทีม ี constructor ใน
่
รูป แบบต่า งๆ
public class Student {
public class Student {
protected String name;
protected String name;
public Student(String n) {
public Student(String n) {
name = n;
name = n;
}}
}}
public class GradStudent extends Student {
public class GradStudent extends Student {
public GradStudent(String n) {
public GradStudent(String n) {
super(n);
super(n);
}}
public GradStudent() {
public GradStudent() {
this(" ");
this(" ");
}}
}}
77. ตัว อย่า ง โปรแกรมแสดงเมธอด
equals()
class Student {
class Student {
private String name;
private String name;
public Student(String n) {
public Student(String n) {
name = n;
name = n;
}}
public boolean equals(Object obj) {
public boolean equals(Object obj) {
if (obj.equals(name)) { return true;}
if (obj.equals(name)) { return true;}
else return false;
else return false;
}}
}}
public class TestEquals {
public class TestEquals {
public static void main(String args[]) {
public static void main(String args[]) {
Student s1 = new Student("Thana");
Student s1 = new Student("Thana");
Student s2 = new Student("Thana");
Student s2 = new Student("Thana");
System.out.println(s1.equals(s2));
System.out.println(s1.equals(s2));
}}
}}
ผลลัพ ธ์ท ไ ด้จ ากการรัน โปรแกรม
ี่ true
78. คลาสประเภท Wrapper
คลาสประเภท Wrapper จะช่ว ยในการสร้า งออป
เจ็ค ทีเ ก็บ ชนิด ข้อ มูล แบบพืน ฐานไว้ใ นคอลเล็ก ชั่น
่ ้
แบบ Heterogeneous
คลาสประเภท
ชนิด ข้อ มูล มีด ัง นี้
Wrapper คลาส
boolean Boolean
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
79. ตัว อย่า งโปรแกรมแสดงการใช้
คลาสประเภท Wrapper
public class ShowWrapper {
public class ShowWrapper {
public static void main(String args[]) {
public static void main(String args[]) {
Boolean b = new Boolean(true);
Boolean b = new Boolean(true);
Character c = new Character('A');
Character c = new Character('A');
Double d = new Double(1.234);
Double d = new Double(1.234);
System.out.println(b);
System.out.println(b);
System.out.println(c);
System.out.println(c);
System.out.println(d);
System.out.println(d);
}}
}}
true
ผลลัพ ธ์ท ไ ด้จ ากการรัน โปรแกรม
ี่ A
1.234
87. ตัว อย่า งโปรแกรมแสดงคลาสแบบ
abstract
public abstract class Student {
public abstract class Student {
protected String id;
protected String id;
protected String name;
protected String name;
protected double gpa;
protected double gpa;
public void setID(String ID) {
public void setID(String ID) {
id = ID;
id = ID;
}}
public void setName(String n) {
public void setName(String n) {
name = n;
name = n;
}}
public void setGPA(double GPA) {
public void setGPA(double GPA) {
gpa = GPA;
gpa = GPA;
}}
public abstract void showDetails();
public abstract void showDetails();
}}
88. ตัว อย่า งคลาสที่ส บ ทอดมาจาก
ื
คลาสแบบ abstract
public class FullTimeStudent extends Student {
public class FullTimeStudent extends Student {
private int credit;
private int credit;
private final int MAX_YEAR = 4;
private final int MAX_YEAR = 4;
public FullTimeStudent(int c) {
public FullTimeStudent(int c) {
credit = c;
credit = c;
}}
public void showDetails() {
public void showDetails() {
System.out.println("ID: "+id);
System.out.println("ID: "+id);
System.out.println("Name: "+name);
System.out.println("Name: "+name);
System.out.println("GPA: "+gpa);
System.out.println("GPA: "+gpa);
System.out.println("Credit: "+credit);
System.out.println("Credit: "+credit);
}}
}}
91. ตัว อย่า งอิน เตอร์เ ฟส
public interface Student {
public interface Student {
public void setID(String ID);
public void setID(String ID);
public void setName(String n);
public void setName(String n);
public void setGPA(double GPA);
public void setGPA(double GPA);
public void showDetails();
public void showDetails();
}}
92. ตัว อย่า ง คลาสที่ implements
อิน เตอร์เ ฟส
public class PartTimeStudent implements Student {
public class PartTimeStudent implements Student {
private String id;
private String id;
private String name;
private String name;
private double gpa;
private double gpa;
private int credit;
private int credit;
private final int MAX_YEAR = 8;
private final int MAX_YEAR = 8;
public PartTimeStudent(int c) {
public PartTimeStudent(int c) {
credit = c;
credit = c;
}}
public void setID(String ID) {
public void setID(String ID) {
id = ID;
id = ID;
}}
public void setName(String n) {
public void setName(String n) {
name = n;
name = n;
}}
96. ตัว อย่า งโปรแกรมแสดงคลาสที่อ ยู่
ภายในคลาส
public class Outer {
public class Outer {
public void method1() {
public void method1() {
Inner in1 = new Inner();
Inner in1 = new Inner();
in1.method2();
in1.method2();
}}
public class Inner {
public class Inner {
public void method2() {
public void method2() {
System.out.println("Inner Demo");
System.out.println("Inner Demo");
}}
}}
}}
public class InnerDemo {
public class InnerDemo {
public static void main(String args[]) {
public static void main(String args[]) {
Outer.Inner in2 = new Outer().new Inner();
Outer.Inner in2 = new Outer().new Inner();
in2.method2();
in2.method2();
}}
}}
99. ตัว อย่า งโปรแกรมแสดงคลาสที่อ ยู่
ภายในเมธอด
public class MOuter {
public class MOuter {
private int a = 1;
private int a = 1;
public void method(final int b) {
public void method(final int b) {
final int c = 2;
final int c = 2;
int d = 3;
int d = 3;
class Inner {
class Inner {
private void iMethod() {
private void iMethod() {
System.out.println("a = "+a);
System.out.println("a = "+a);
System.out.println("b = "+b);
System.out.println("b = "+b);
System.out.println("c = "+c);
System.out.println("c = "+c);
System.out.println("d = "+d);
System.out.println("d = "+d); //illegal
//illegal
}}
}}
}}
}}