본문 바로가기

이철규

(142)
자바의 정석 9-20 코드분석 public class StringReplace { private String source =""; private int length; private StringBuffer buffer; public StringReplace(String source) { this.source = source; // 전달받는 문자열로 초기화 length = source.length(); // source의 길이로 초기화 buffer = new StringBuffer(length + 100); // 버퍼(저장공간)의 크기는 length+100으로 } public int length() { return length; } public String replace(String old, String nw) { return repla..
[안드로이드] 액티비티(Activity)와 인텐트(Intent) 1. 액티비티 추가 액티비티(Activity)는 사용자와의 인터페이스를 만들지만 자체 출력기능이 없다. 사용자에게 실제로 보여지는 부분은 뷰(View) 또는 뷰그룹(ViewGroup)에 해당한다. 액티비티가 생성될 때(onCreate)마다 호출되는 setContentView 메서드가 액티비티안에 뷰를 배치하는 명령이다. 액티비티 하나는 독립된 기능을 수행하며 액티비티끼리 중첩되지 않는다는 것도 뷰와 다른 점이다. 일단 새로운 액티비티를 추가한 뒤, 액티비티간에 통신하는 코드를 구성할 것이다. 메인 액티비티 → CALL 버튼 → 서브 액티비티 간단하게 정리하면 액티비티 간 통신을 하기 ..
[안드로이드] 커스텀 대화상자(Custom Dialog) ※ 저는 안드로이드 프로그래밍 정복(김상형 著, 한빛미디어) 책을 이용해 공부하고 있으며예제와 코드는 이 책을 통해 공부중임을 밝힙니다.개인적인 공부를 하면서 정리한 형식이기 때문에 심각한 오류가 있을 수 있습니다. 피드백 주시면 정말 감사하겠습니다.※ 안드로이드 프로그래밍 정복 820p~831p 1. 커스텀 대화상자 여러 정보를 보여주거나, 입력받으려면 궁극적으로 커스텀 뷰를 사용한다. AlertDialog.Builder setView (View view) View로부터 파생된 임의의 뷰를 대화상자 안에 배치할 수 있으며 뷰그룹도 가능하다. 스피너를 한번 달아보려고 했는데 실패했다. ㅠㅠ 기본 레이아웃 1. 레이아웃을 하나 더 만들어줘야 한다. public class ExerciseExam extend..
[JAVA} Object 클래스 java.lnag 패키지는 자바프로그래밍에 가장 기본이 되는 클래스들을 포함하고 있다.따라서 import 문 없이도 사용할 수 있다. 0. 개 론 가장 많이 사용하는 메서드는 equals, toString, hashCode이며 사용할 떄는 반드시 "오버라이딩"해야 한다.equals와 hashCode는 사용자가 알맞게 정의해야 사용할 수 있다.오버라이딩 하기 위해서 메뉴중에 Soruce메뉴를 보면, Generate라는 도구가 있다.워낙 자주 사용하기 때문에 이렇게 이클립스가 지원하는 부분이다. 1. Object 클래스 모든 클래스의 최고조상이기 때문에 Object 클래스의 멤버들은 모든 클래스에서 바로 사용이 가능하다. 멤버변수는 없고, 11개의 메서드만 가지고 있다. Object 클래스 내에 정의된 메서..
자바의 정석 8-9 코드분석 class exercise{ public static void main(String[] args) throws Exception { throw new UnsupportedFunctionException("지원하지 않는 기능입니다.",100); } } class UnsupportedFunctionException extends RuntimeException{ final private int ERR_CODE; UnsupportedFunctionException(String msg, int errCode){ super(msg); // 조상클래스 RuntimeException의 생성자를 호출 ERR_CODE = errCode; } UnsupportedFunctionException(String msg){ thi..
[안드로이드] 대화상자 ※ 저는 안드로이드 프로그래밍 정복(김상형 著, 한빛미디어) 책을 이용해 공부하고 있으며예제와 코드는 이 책을 통해 공부중임을 밝힙니다.개인적인 공부를 하면서 정리한 형식이기 때문에 심각한 오류가 있을 수 있습니다. 피드백 주시면 정말 감사하겠습니다.※ 안드로이드 프로그래밍 정복 787~802p 1. 대화상자(AlterDialog) 토스트(Toast)는 사용자에게 메시지를 전달하지만 자동으로 닫힌다. 좀 더 복잡한 메시지를 전달할 때 대화상자가 적절하다. public class ExerciseExam extends AppCompatActivity { public class AlertDialogTest extends Activity { public void onCreate(Bundle savedInstan..
[JAVA} 예외처리(Exceptpion Handing) 1. 프로그램 오류의 종류 컴파일 에러(Compile-time Error) : 컴파일 도중 발생하는 에러 런타임 에러(Runtime Error) : 프로그램 구동 중 발생하는 에러 2. 예외처리의 정의와 목적 정의 : 프로그램 실행 시 발생할 수 있는 예외 발생에 대비한 코드 작성목적 : 프로그램의 비정상적인 종류를 막고, 정상적인 실행상태를 유지하는 것 3. 예외처리 구문 ( try - catch ) try { 예외가 발생할 수 있는 문장 } catch (Exception1 e1) { Exception1이 발생했을 경우, 이를 처리하기 위한 문장 } 예제를 통해서 살펴보도록 하자.1. class exercise1{ 2. public static void main(String args[]){ 3. int..
[안드로이드] 커스텀 위젯(Custom Widget) ※ 저는 안드로이드 프로그래밍 정복(김상형 著, 한빛미디어) 책을 이용해 공부하고 있으며예제와 코드는 이 책을 통해 공부중임을 밝힙니다.개인적인 공부를 하면서 정리한 형식이기 때문에 심각한 오류가 있을 수 있습니다. 피드백 주시면 정말 감사하겠습니다.※ 안드로이드 프로그래밍 정복 1판 참조 커스텀 : 내 입맛대로 만들겠다!커스텀 위젯 : 내 입맛대로 위젯을 만들겠다! 안드로이드가 커스텀 위젯 제작을 지원하는 방법 1. 기존 위젯 클래스를 상속 → 기능을 확장하거나 수정 2. 단순한 기능을 제공하는 위젯을 결합하여 복잡한 동작을 수행하는 위젯 그룹을 정의 VIewGroup이나 파생 클래스를 확장하여 만든다. 3. 기존에 없었던 새로운 위젯을 만든다. 최상위 위젯 클래스 VIew로부터 상속받는다. < 1번 ..