Language/Java 10

[Design Pattern] Singleton 패턴

인스턴스가 하나 뿐인 객체를 만들 수 있게 해주는 패턴 특정 클래스에 대해 객체 인스턴스를 하나만 만들 수 있다. 사용 용도> 자원 관리 Pool, 특정 하드웨어를 Control하는 디바이스 드라이버 등 비슷한 역할을 하는 전역 변수와의 비교> 전역 변수는 애플리케이션 시작될 때 생성 불필요하게 자원을 잡아먹는 경우 발생 Singleton은 필요할 때 객체 생성 [Singleton 기본 구조] public class Singleton { private static Singleton uniqueInstance; private Singleton() {} public static Singleton getInstance() { if(uniqueInstance == null) uniqueInstance = new..

Language/Java 2020.11.26

Java - public, private, protected 차이 구분

자바를 체계적으로 공부하지 않고, 샘플 코드 위주로 학습하여 코딩하다 보니 아직 부족한 부분이 많다. 아직까지도 다소 이해가 부족한 부분이 있는데, public, private, protected 이다. 접근제어자 (Access Modifier)public, private, protected 는 공식적으로 한글로는 접근제어자, 영어로는 Access Modifier 라고 부른다. 이 접근제어자는 Class 에 붙을 수도 있고, Method에 붙을 수도 있고, field에 붙을 수도 있다.각 경로에 대해서 그 접근제어자가 가지는 의미를 알아보자. public class : 모든 package에서 해당 class로 접근이 가능하다.private class : 자신을 포함한 package에서만 해당 class로..

Language/Java 2016.02.24

CharSequence과 String, StringBuffer, CharBuffer 비교

여기서는 String, StringBuffer, CharBuffer 각각의 차이점보다 CharSequence와 다른것들과의 차이를 알아보고자 한다. public interface CharSequence public final class String extends Object implements Serializable CharSequence Comparable public final class StringBuffer extends Object implements Serializable Appendable CharSequence public abstract class CharBuffer extends Buffer implements Appendable CharSequence Comparable Readabl..

Language/Java 2016.01.27

fill_parent, match_parent and wrap_content

fill_parent, match_parent and wrap_content fill_parent : 부모의 크기를 꽉 채우라는 말이다. 다만 부모의 안쪽 padding(여백)이 설정되어 있을 경우 보기엔 꽉차보이지 않을 수 있다. 이와 같은 이유로 fill_parent 의 명칭이 froyo 부터 match_parent로 변경되었다. fill_parent, match_parent 모두 같은 것..... wrap_content : 부모의 크기에 맞추는 것이 아니라 해당 view에 설정된 값에 맞게 보여준다.

Language/Java 2015.05.23

새로운 apk의 버전 코드(1)가 이미 존재합니다.

새로운 apk의 버전 코드(1)가 이미 존재합니다. 새롭게 업데이트를 좀 해서 apk를 업로드 하려고 하니 "새로운 apk의 버전 코드(1)가 이미 존재합니다." 라는 에러가 발생한다. 이럴 경우는 AndroidManifest.xml 의 상단 부분을 수정하면 된다. http://schemas.android.com/apk/res/android" package="com.calliemason.kidsanimation" android:versionCode="11"

Language/Java 2015.05.23

ListView에서 textSize 변경하기.

인터넷을 찾아 보니 textSize를 변경하기 위해 android:textSize 를 추가 하면 된다고 한다. 하지만 아무리해도 ListView안에 해당 속성을 추가해도 바뀌지 않는 것이 아닌가....! 좀 더 자세히 읽어 보니 ListView 속성이 아니라 TextView 속성이었다. 그렇다면 ListView 속성은 어떻게 변경해야 하는 것인가... res/layout 밑에 list_layout.xml과 같은 xml 파일을 만든 후 아래와 같이 추가한다. http://schemas.android.com/apk/res/android" android:text="@+id/TextView01" android:id="@+id/TextView01" android:layout_height="wrap_content"..

Language/Java 2015.05.23

Java - @ (annotation)

@Override, @SuppressWarnings ...Java 코드를 보다보면 위와 같이 흔히 말하는 골뱅이 @가 붙어있는 문법을 볼 수 있다. C만 사용하던 나에게 대체 의미를 알 수 없는 문법이다. @를 annotation이라고 부르는데 결론적으로 @ (annotation)은 있어도 그만 없어도 그만이다.주석과는 달리 컴파일러가 실행되기 전 실수를 보정해 주는 역할을 하고 있다. 흔히 사용되는 예로는 다음과 같다. @OverrideSuper class의 method를 재정의 한다는 의미이다. 만약 @Override를 선언하고 method를 재정의하였는데 해당 method가 super class에 없다면 에러를 표시한다 @SuppressWarnings일반적으로 경고하는 내용을 경고하지 말도록 지시하..

Language/Java 2015.05.23