목록Java (2)
개발빌런
ArrayList, Vector 모두 List 인터페이스를 구현한 콘크리트 클래스로서 자바의 배열이 가지고 있는 한계점을 개선했습니다. 자바의 배열은 고정된 길이를 가지고 있기 때문에 데이터가 몇 개 인지 알 수 있는 경우에는 사용하는데 지장이 없지만, 데이터가 몇 개 인지 모를 경우에는 배열의 사이즈를 잡기 곤란합니다. 그렇기에 ArrayList, Vector를 많이 이용하는데 두 클래스의 차이점이 무엇인지 조사해봤습니다. 1. Synchronization ArrayList는 여러 개의 쓰레드가 한번에 접근하여 연산 (add, remove)가 가능! (non-synchronized)Vector는 한 쓰레드가 접근중인 경우 다른 쓰레드가 접근할 수 없음! (synchronized) 2. Resize Ar..
안드로이드에서 아래와 같이 static newInstance() 메소드를 이용하여 프래그먼트를 생성하는 코드를 많이 접해보셨을 것이라 생각합니다. 123456789public class MyFragment extends Fragment { public static newInstane() { return new MyFragment(); } public MyFragment() { ... }}Colored by Color Scriptercs 위의 코드는 아무런 의미가 없어 보입니다. newInstance() 메소드를 사용할 필요 없이 그냥 constructor 만 있어도 될 것 같습니다. 왜 필요할까요? 안드로이드의 프래그먼트는 파라미터가 없는 constructor 만 가지고 있습니다. 따라서 아래와 같이 c..