ÀÎÅÍÆäÀ̽º
//InterfaceTest.java interface IStack { void push(int item); int pop(); } class FixedStack implements IStack { private int stack[]; private int tos; FixedStack(int size) { stack = new int[size]; tos = -1; } public void push(int item) { // ÀÎÅÍÆäÀ̽º¿¡¼ Á¤ÀÇµÈ ¸Þ¼Òµå if(tos==stack.length-1) System.out.println("½ºÅÃÀÌ ²ËãÀ½"); else stack[++tos] = item; } public int pop() { // ÀÎÅÍÆäÀ̽º¿¡¼ Á¤ÀÇµÈ ¸Þ¼Òµå ±¸Çö if(tos < 0) { System.out.println("½ºÅÃÀÌ ºñ¾úÀ½"); return 0; } else return stack[tos--]; } } class InterfaceTest { public static void main(String args[]) { FixedStack mystack1 = new FixedStack(10); FixedStack mystack2 = new FixedStack(5); for(int i=0 ; i<10 ; i++) mystack1.push(i); for(int i=0 ; i<5 ; i++) mystack2.push(i); System.out.println("½ºÅà : mystack1"); for(int i=0 ; i<10 ; i++) System.out.print(mystack1.pop() + " "); System.out.println(); System.out.println("½ºÅà : mystack2"); for(int i=0 ; i<5 ; i++) System.out.print(mystack2.pop() + " "); } } //ITExtend.java interface A { void ameth1(); void ameth2(); } interface B { void bmeth1(); } interface C extends A,B { // µÎ°³ÀÇ ÀÎÅÍÆäÀ̽º »ó¼Ó void cmeth1(); } class InterfaceClass implements C { public void ameth1() { System.out.println("ameth1() ¸Þ¼ÒµåÀÇ ±¸Çö"); } public void ameth2() { System.out.println("ameth2() ¸Þ¼ÒµåÀÇ ±¸Çö"); } public void bmeth1() { System.out.println("bmeth1() ¸Þ¼ÒµåÀÇ ±¸Çö"); } public void cmeth1() { System.out.println("cmeth1() ¸Þ¼ÒµåÀÇ ±¸Çö"); } } class ITExtend { public static void main(String arg[]) { InterfaceClass ic = new InterfaceClass(); ic.ameth1(); ic.ameth2(); ic.bmeth1(); ic.cmeth1(); } } //InterfaceReference.java interface A { void display(String s); } class C1 implements A { public void display(String s) { System.out.println("Ŭ·¡½º C1 °´Ã¼ ÀÌ¿ë : " + s); } } class C2 implements A { public void display(String s) { System.out.println("Ŭ·¡½º C2 °´Ã¼ ÀÌ¿ë : " + s); } } class C3 implements A { public void display(String s) { System.out.println("Ŭ·¡½º C3 °´Ã¼ ÀÌ¿ë : " + s); } } class InterfaceReference { public static void main(String args[]) { A memo; // AÀÎÅÍÆäÀ̽ºÇü ÂüÁ¶ º¯¼ö memo ¼±¾ð memo = new C1(); // Ŭ·¡½º C1ÀÇ °´Ã¼¸¦ »ý¼ºÇÏ¿© memo¿¡ ÇÒ´ç memo.display("¾È³çÇϼ¼¿ä? "); memo = new C2(); memo.display("¾Ë±â½±°Ô ÇØ¼³ÇÑ ÀÚ¹Ù."); memo = new C3(); memo.display("ÀÚ¹Ù¸¦ ÀÚ¹Ùº¾½Ã´Ù."); } } //InstanceOf.java class A { int i, j; } class B extends A{ int k; } class C extends B { int l; } class InstanceOf { public static void main(String args[]) { A a = new A(); B b = new B(); C c = new C(); if(a instanceof A) System.out.println("a´Â A Ŭ·¡½ºÀÇ °´Ã¼"); if(b instanceof B) System.out.println("b´Â B Ŭ·¡½ºÀÇ °´Ã¼"); if(c instanceof C) System.out.println("c´Â C Ŭ·¡½ºÀÇ °´Ã¼"); if(c instanceof A) System.out.println("c´Â A Ŭ·¡½ºÀÇ °´Ã¼ : Çüº¯È¯"); // °´Ã¼ c´Â Ŭ·¡½º A°¡ °¡Áö°í ÀÖ´Â ¸ðµç Á¤º¸¸¦ Á¦°øÇÒ ¼ö ÀÖ´Ù // Çüº¯È¯ÀÌ ¼º°øÇÑ´Ù if(a instanceof C) System.out.println("a´Â C Ŭ·¡½ºÀÇ °´Ã¼ : Çüº¯È¯"); else System.out.println("a´Â C Ŭ·¡½ºÀÇ °´Ã¼°¡ ¾Æ´Ô : Çüº¯È¯ ºÒ°¡"); // °´Ã¼ a´Â Ŭ·¡½º C°¡ °¡Áö°í ÀÖ´Â ¸ðµç Á¤º¸¸¦ Á¦°øÇÒ ¼ö ¾ø´Ù // Çüº¯È¯ÀÌ ½ÇÆÐ } }