반응형

분류 전체보기 2934

천안 독립기념관, 봄이 오려나

천안 독립기념관, 봄이 오려나 이용 시간09:30~18:00 (3월~10월) , 17:00시까지 입장 가능합니다.09:30~17:00 (11월~2월), 16:00시까지 입장 가능합니다. 휴관일매주 월요일(공휴일일 때는 개관)상설전시관 외 야외전시, 쉼터 등은 개방합니다. 입장료무료 주차료 소형(2000원), 대형(3000원), 감면(1000원), 국가 유공자(면재)감면 대상은 장애인, 국가유공자 가족, 경차, 하이브리드카, 저공해차, 병역이행 명문가주차료는 1일 기준입니다. 예약온라인 예약: 전시관 해설, 체험 전시관, 장소 사용 예약현장 접수: 4D 입체 영상관 관람(160석, 15분 내외) 주변 여행지[충남 천안] 유관순 열사 기념관[충남 천안] 천호저수지[충남 천안] 각원사[충남 천안 여행] 우정박..

여행/국내여행 2016.04.17

천안 독립기념관 첫눈, 그리고 워크샾

천안 독립기념관 첫눈, 그리고 워크샾 이용 시간09:30~18:00 (3월~10월) , 17:00시까지 입장 가능합니다.09:30~17:00 (11월~2월), 16:00시까지 입장 가능합니다. 휴관일매주 월요일(공휴일일 때는 개관)상설전시관 외 야외전시, 쉼터 등은 개방합니다. 입장료무료 주차료 소형(2000원), 대형(3000원), 감면(1000원), 국가 유공자(면재)감면 대상은 장애인, 국가유공자 가족, 경차, 하이브리드카, 저공해차, 병역이행 명문가주차료는 1일 기준입니다. 예약온라인 예약: 전시관 해설, 체험 전시관, 장소 사용 예약현장 접수: 4D 입체 영상관 관람(160석, 15분 내외) 주변 여행지[충남 천안] 유관순 열사 기념관[충남 천안] 천호저수지[충남 천안] 각원사[충남 천안 여행]..

여행/국내여행 2016.04.17

[안드로이드] 36. Java 개체의 생과 사

개체의 생과 사 C언어나 C++언어에서는 동적으로 메모리를 할당하면 힙에 할당하고 개발자 코드에 의해 해제해야 합니다. 이에 반해 Java 언어에서는 개발자 코드에 의해 개체를 생성하지만 개발자 코드에 의해 개체를 소멸하지 않습니다. 이와 같이 개체의 생성은 개발자 코드에 의해 결정하고 소멸하는 코드를 작성하지 않는 이유는 Java 가상 머신의 관리화 힙(Managed Heap)에 개체를 할당하여 관리하기 때문입니다. Java에서 개체를 생성하면 관리화 힙(Managed Heap)에 할당합니다. 관리화 힙은 Java가상 머신에서 개체를 참조하는 변수의 개수를 카운팅하여 관리합니다. 그리고 가상 머신의 쓰레기 수집기(Gabage Collector)에 의해 관리화 힙의 개체를 참조하는 변수의 카운터가 0이 ..

[안드로이드] 35. Java 중복 정의(Overloading)

중복 정의(Overloading) Java 언어에서는 클래스의 멤버 메서드의 입력 매개 변수 리스트가 충분히 다르면 같은 이름으로 여러 개의 멤버 메서드를 정의할 수 있습니다. 이러한 특징을 메서드 중복 정의(Overloading)이라고 부릅니다. 예를 들어 원을 클래스로 정의합시다. 원 개체를 생성할 때는 반지름을 입력 인자로 생성하게 하고 면적을 구하는 메서드를 제공합시다. 만약 입력 인자를 전달하지 않으면 원의 넓이를 구하고 입력 인자로 각 정보를 전달하면 호의 면적을 구합니다. 이 때 입력 인자를 전달하지 않고 원의 넓이를 구하는 메서드와 각 정보를 전달하여 호의 면적을 구하는 메서드의 이름을 같은 이름으로 정의할 수 있습니다. public double calculateArea(){ return ..

[안드로이드] 34. Java 접근 지정자

접근 지정자 앞에서 OOP에서는 캡슐화 과정에서 멤버의 가시성을 정의하여 접근 수준을 지정할 수 있다고 하였습니다. Java 언어에서는 public, protected, private 키워드를 이용하여 접근 지정할 수 있는데 이와 같은 접근 지정을 왜 해야 하는지 알아봅시다. 멤버의 가시성을 public으로 지정하면 모든 곳에서 접근이 가능합니다. 따라서 형식 개체를 사용하는 곳에서 접근해야 하는 멤버에는 가시성을 public으로 지정합니다. 멤버의 가시성을 protected로 지정하면 클래스 자신의 내부와 파생 클래스에서는 접근할 수 있지만 그 외의 클래스에서는 접근할 수 없습니다. 이에 관한 문법은 상속을 다루면서 소개하기로 할게요. private으로 가시성을 지정하면 클래스 자신 내부에서만 접근할 ..

[안드로이드] 33. Java 클래스 정의하기

클래스 정의하기 Java 언어에서 클래스를 정의할 때 캡슐화 대상은 멤버 필드와 멤버 메서드입니다. 멤버 필드는 개체의 상태를 나타내는 필드로 데이터로 생각할 수 있습니다. 멤버 메서드는 개체의 상태를 제어하는 기능입니다. 그리고 클래스의 멤버에는 접근 지정을 통해 클래스 내부에서만 접근할 수 있는지, 클래스 내부와 파생 클래스에서 접근할 수 있는지, 다른 클래스에서도 접근할 수 있는지를 결정할 수 있습니다. 이를 통해 개체의 정보를 은닉하여 신뢰성을 높일 수 있습니다. 클래스는 클래스 이름과 멤버 필드와 멤버 메서드로 구성합니다. OOP 프로그램을 설계할 때 클래스는 세 개의 칸으로 구분하는 사각형으로 표시하는데 맨 위칸에는 클래스 이름을 표시하고 두 번째 칸에는 멤버 필드, 세 번째 칸에는 멤버 메서..

[안드로이드] 32. Java OOP 개요

OOP 개요 프로그래밍 언어의 종류는 셀 수 없을 정도로 많습니다. 초기의 코볼이나 파스칼, 포트란등의 언어는 기능 중심으로 프로그램을 구성하기 쉬운 구조적 프로그래밍 언어입니다. 그런데 프로그래밍 역사가 발전하면서 사람이 살고 있는 세상과 비슷한 구조로 표현할 수 있는 OOP[1]에 관한 연구를 진행하였습니다. 그리고 Java 언어와 C# 언어 등은 OOP 언어입니다. OOP 언어는 사용자 정의 형식을 만들 때 데이터와 기능을 하나로 캡슐화합니다. 이전 구조적 프로그래밍 언어에서는 사용자 정의 형식에는 데이터만 정의하고 기능은 별도로 정의해야 했습니다. 하지만 OOP 언어에서는 데이터와 기능을 하나로 캡슐화할 수 있습니다. [그림]구조적 프로그래밍 언어 VS OOP 언어 일반적으로 OOP 언어에서 사용..

[안드로이드] 31. Java continue 문

continue 문 continue 문은 반복문 내에 수행할 반복 구문 중에 특정 위치에서 뒤의 구문을 수행하지않고 바로 반복의 후처리 구문 및 조건식으로 분기할 때 사용합니다. 예를 들어 1에서 100사이의 정수 중에 2의 배수나 3의 배수를 제외한 나머지 정수의 합계를 구한다고 가정합시다. 이를 위해서는 루프 카운터 변수 i를 1에서 100까지 1씩 증가하는 반복문에서 i가 2의 배수이거나 3의 배수이면 다음으로 넘어가고 그렇지 않을 때만 sum에 i를 더하면 될 것입니다. 이 때 i가 2의 배수이거나 3의 배수일 때 continue문을 사용하여 문제를 해결할 수 있습니다. private static void exContinue() { int sum = 0; for(int i = 0; i

[안드로이드] 30. Java break 레이블문

break 레이블문 프로그래밍하다 보면 반복문 내부에 반복문을 사용해야 할 때가 있습니다. 만약 내부 반복문에서 break문을 사용하면 내부 반복문만 탈출합니다. 그런데 외부 반복문에 레이블을 지정하고 내부 반복문에서 break 레이블문을 사용하면 외부 반복문을 탈출할 수 있습니다. 먼저 Java 언어에서는 코드 상에 레이블 이름을 지정하고 콜론(:)을 표시하면 레이블을 설정하는 것입니다. 레이블 명: 그리고 break 레이블문은 break 뒤에 레이블 이름을 표시하는 것입니다. break 레이블 명; 예를 들어 구구단의 합을 계산하다 처음으로 1000을 넘는 위치가 어디인지 확인하는 로직을 구현해 봅시다. 이를 위해서는 단을 진행하기 위한 반복문이 외부에 있고 내부에 다시 단*1에서 단*9까지 진행하며..

반응형