THÂN CHÀO QUÝ BẠN
Blogger nầy chỉ tồn trử kiến thức và kinh nghiệm về nghề “Materials Testing”, “Textile Screen Printing” và “Internet Programming” của một kỹ sư đã phục vụ tại :
* Trung Tâm Khảo sát Kỹ Thuật Quân Nhu /QLVNCH “ & “ Viện Quốc Gia Định Chuẩn/VNCH”
* Xí nghiệp “Hiệp Hưng / VN” ( sãn xuất giày vãi cao su )
"Bradbury Company Inc/USA"(Textile Screenprinting,Imprinted Sportswear Programs) & “Sundance Graphics Inc / USA” ( in bông vãi sợi ) từ năm 1965 để dành cho thế hệ trẻ muốn học nghề.
Vạn Vật Thái Bình (PEACE ON EARTH).

Monday, August 10, 2015

HOW TO CALL A METHOD OR FUNCTION IN JAVA

PHƯƠNG PHÁP CALL MỘT METHOD HAY FUNCTION TRONG JAVA PROGRAM.
                         NĂM PHƯƠNG PHÁP CĂN BẢN.
1-   Nêu method là static thì call nó trực tiếp trong main method.
Thí du.
 
class Rextester{
   static void display(){
   System.out.println("Hello Friends ! You call me directly from inside main method\nbecause I am static");
}
    public static void main(String[] args){
                         display();
   }
}
Output.
Compilation time: 0.82 sec, absolute running time: 0.14 sec, cpu time: 0.07 seCompilation time: 0.82 sec, absolute running time: 0.14 sec,
cpu time: 0.07 sec, memory peak: 28 Mb, absolute service time: 0.97 sec
 
Hello Friends ! You call me directly from inside main method
because I am static

2- Nêu method là non-static , muốn call nó phải tạo một object cho class trong main method.

Thí du.
 
class Rextester{
    void display(){
   System.out.println("Hello Friends ! You must create an object for class inside main method to call me\nbecause I am non-static");
}
    public static void main(String[] args){
                        Rextester rx = new Rextester();
                         rx. display();
   }
}
Output.
Compilation time: 0.82 sec, absolute running time: 0.13 sec, 
cpu time: 0.06 sec, memory peak: 27 Mb, absolute service time: 0.95 sec
 
Hello Friends ! You must create an object for class inside main method
To call me because I am non-static

3-   Nếu method là non-static chứa trong Inner class hay còn gọi Member class , muốn call nó phải tạo trong main method một combined object oi của Outer class và Inner class như sau :
                           Outer.Inner  oi = new Outer().new Inner();
Thí du.
 
class Rextester {   
 static{
System.out.println("HOW TO CALL A METHOD WRITTEN INSIDE THE INNER CLASS ? ");
}
class Inner {  
          void display() {  
 System.out.println("I am the method in the Inner class.\n You must create an  object combining the Outer class with the Inner class to call me ");  
 
  public static void main(String[] args){         
Rextester.Inner  oi = new  Rextester().new Inner();
                            oi.display();
}}
Output.
  Compilation time: 1.04 sec, absolute running time: 0.13 sec, 
cpu time: 0.07 sec, memory peak: 28 Mb, absolute service time: 1.18 sec
 
HOW TO CALL A METHOD WRITTEN INSIDE THE INNER CLASS ? 
I am the method in the Inner class.

 You must create an  object combining the Outer class with the Inner class to call me 

4- Trong class Inner viết method void display().Muốn call method nầy thì tạo thêm một method nữa thí dụ void run().Trong void run() tạo một object cho class Inner , rồi call method display() trong void run().
 
class Rextester {   
 static{
System.out.println("HOW TO CALL A METHOD WRITTEN INSIDE THE INNER CLASS ? ");
}
class Inner {  
          void display() {  
 System.out.println("I am the method in the Inner class.\nCreate an object for Inner class inside the method run to call me. ");  }  
 
  public static void main(String[] args){         
Rextester  rx = new  Rextester();
                            rx.run();}
 
           void run(){
             Inner in = new Inner();
                    in.display();}
}
Output.
 Compilation time: 0.83 sec, absolute running time: 0.13 sec, cpu time: 0.1 sec, memory peak: 27 Mb, absolute service time: 0.96 sec
 
HOW TO CALL A METHOD WRITTEN INSIDE THE INNER CLASS ? 
I am the method in the Inner class.
Create an object for Inner class inside the method run to call me.

5-Nếu method display() viết trong static class Nested.Tạo object cho class Nested trong main method rồi call display() .
Thí dụ
   class Rextester{
   static class Nested{  
   void display(){    // Method having no return 
System.out.println(" Function display() is inside class Nested");}
}
    public static void main(String[] args){
           Nested ns= new Nested(); 
                        ns.display(); }
}
output.
Compilation time: 0.83 sec, absolute running time: 0.14 sec, 
cpu time: 0.09 sec, memory peak: 21 Mb, absolute service time: 0.99 sec
 
Function display() is inside class Nested
 
GHI CHÚ.
Java  programming chấp nhận trong mỗi class, chúng ta có thể viết thêm một hay nhiều classes khác có một tên chung là nested class.
Có 2 loại nested class :  
* static nested class và non- static nested class.
* non-static nested class còn được gọi là INNER CLASS hoặc MEMBER CLASS.
* class ngoài cùng gọi là OUTER CLASS.
* INNER CLASS viết trong OUTER CLASS.
* Trong bài nầy,người viết chọn OUTER CLASS là class Rextester để có thể xử dụng compiler của Rextester.com   * Taị sao chúng ta cần dùng Inner class hay Nested class? Vì muốn program được đơn giản và có tổ chức rõ ràng dễ kiểm soát(Simple and Concise),mỗi class làm một phần việc riêng.