본문 바로가기
반응형

java37

ArrayList와 LinkedList의 차이점. 자료구조 형식이라고 하던데... ArrayList와 LinkedList라는 놈이 있다.. 사용하는 방법도 똑같다. 선언할때만 틀리고 안에는 타입을 넣어야 하는데 그냥 String으로 선언하는거 넣어 봤다. ArrayList list = new ArrayList(); LinkedList list = new LinkedList(); list.get(1); list.add("kei"); list.add(2, "kei2"); list.set(1, "hello"); list.remove(2); 뭐 이런식으로 똑같다. 근제 차이점은 성능이다 ArrayList는 일렬로 쭉 ~ 나열해 뒀고 LinkedList는 한놈한놈마다 서로를 가르키게 링크를 걸어 두고 첫놈과 끝에 놈 위치만 보관하면 된다. 그러면 읽는 일이 많을.. 2011. 4. 18.
interface는 뭐하는 놈일까? 어쩌다가 interface까지 왔다.. 자바에서는 다중상속을 금지 한다. 두놈한테서 상속을 받는데 그 중에 한 놈이 똑같은 메소드 이름을 오버라이딩 해서 쓸 경우 어떤놈을 상속받아서 구현해야 하는지 골치 아프기 때문에 아예 막아 버렸다고 한다. 하지만 인터페이스는 다중 상속이 가능하다. .... 왜냐 인터페이스에서는 선언만 해 두지 로직을 구현하지 않기 때문이다. 인터페이스 선언 구문 interface MyInter { final static byte TEST_VAL = 1; void testMeth(String birth, String phone); void test2(); } 구현할때 class TestInter implements MyInter { String name; String addr; St.. 2011. 4. 14.
super는 뭐 하는 놈일까 super까지 왔다. 상속을 했다는 얘기지... 얘는 왜 하는가??? 어따 쓰는 놈인가.. 필요한가? Test2 클래스를 Test3이 상속 받았다고 치자. class Test2{ int sum = 0; int num; static int tot_sum = 0; void calc(int amt){ sum = sum + amt; tot_sum = tot_sum + amt; } static int getTotSum(){ return tot_sum; } } 이 놈이 Test3 public class Test3 extends Test2{ int bal; Test3(int num, int bal) { this.bal = bal; } } 지금은 Test2를 상속받는데 super고 나발이고 필요가 없다. 이런 경우야 .. 2011. 4. 12.
static은 뭐하는 놈인가? 시덥지 않은 기록 연달아서... ㅎ static붙이면 정적필드, 정적메소드 라고 부른다. 두개 크로스 해서 짬뽕으로 보자. public class Test { public static void main(String[] args) { Test2 t1 = new Test2(); Test2 t2 = new Test2(); t1.calc(100); t2.calc(200); int tot = Test2.getTotSum(); System.out.println(t1.sum); System.out.println(Test2.tot_sum); System.out.println(t2.sum); System.out.println(tot); } } class Test2{ int sum = 0; static int tot_su.. 2011. 4. 12.
반응형