본문 바로가기

전체 글

(142)
[JAVA] 다형성(polymorphism) JAVA의 정석(2nd Edition) (남궁 성 著) 265p~287p 를 참조해 코드를 작성했으며 개인적인 공부 내용을 적은 것이므로 오류가 있을 수 있습니다.'' 0. 들어가기에 앞서 다형성은 상속과 깊은 관계가 있으므로, 충분히 해당 내용이 뭔지 숙지해야 한다.(링크 : http://whatisthenext.tistory.com/34) 다형성 : 하나의 메소드나 or 하나의 클래스가 다양한 방법으로 동작하는 것을 의미한다. 1. 다형성 객체지향개념에서 "다형성(polymorphism)"이란 여러 가지 형태를 가질 수 있는 능력을 의미한다.자바에서는 이를 한 타입의 참조변수로 여러 타입의 객체를 "참조"할 수 있도록 지원한다. [ 예 제 1 ] A타입의 B인스턴스가 생성이 된 상황.클래스 B를 클래..
[안드로이드] 항목 뷰 ※ 저는 안드로이드 프로그래밍 정복(김상형 著, 한빛미디어) 책을 이용해 공부하고 있으며예제와 코드는 이 책을 통해 공부중임을 밝힙니다.개인적인 공부를 하면서 정리한 형식이기 때문에 심각한 오류가 있을 수 있습니다. 피드백 주시면 정말 감사하겠습니다. ※ 안드로이드 프로그래밍 정복(5689p~567p) 참조 1. 커스텀 항목 뷰 말 그대로 커스터마이징(Customizing) 한다는 뜻이다.내가 원하는 형태로 항목 뷰(list 형태)를 구성할 수 있다.렐러티브 레이아웃(Relative Layout)으로 위와 같은 형태로 꾸며보자. 위와 같은 형태가 하나의 객체를 구성하며, 우리는 리스트(항목) 뷰 상태로 계속 추가해나갈 수 있다. 먼저 두개의 .xml 파일을 만-들어야 한다.하나는 리스트뷰 형태로 보이기 ..
[JAVA] 제어자(modifier) JAVA의 정석(2nd Editionm) (남궁 성 著) 254p~264p 를 참조해 코드를 작성했으며개인적인 공부 내용을 적은 것이므로 오류가 있을 수 있습니다. 0. 들어가기에 앞서 제어자는 " 규제 " 이다. 사회도 커지면 질서가 필요하듯이프로그래밍 코드가 추가되면서 내용이 늘어나면 역시 질서가 필요하다. 1. 제어자(modifier) modify에 대한 뜻을 찾아보면 다음과 같다. '한정어'라는 말이 잘 어울린다. 접근제어자 - public, protected, default, private (오른쪽으로 갈수록 범위가 좁아짐)그 외 - static, final, abstract, native, transient, synchronized, volatile, strictfp 제어자는 클래스, 멤버변수..
[JAVA} 클래스 패스(Class Path)와 패키지(Package) https://opentutorials.org/course/1223/5527(오픈튜토리얼)과난 정말 JAVA를 공부한 적이 없어요(윤성우 저, 오렌지 미디어)을 참고해 작성했습니다. 0. 서론 클래스 패스를 왜 사용해야 하는 것일까? 먼저 예제를 살펴보자. [1] 새로운 Java Project를 생성한다. [2] myclass라는 새로운 프로젝트를 생성한다. [3] 다음 위와 같이 코드를 작성한다. 이후 컴파일을 시켜보면 [4] 다음과 같이 파일이 새로 만들어진다. [5] AAA클래스와 BBB클래스를 새로 만든 mysubclass 폴더안에 집어넣은 뒤 실행시켜보자. 그러면 아까와 달리 컴파일이 되지 않는다. [6] 위와 같은 에러가 발생한다. 하위폴더를 만들어서 클래스를 옮긴 것 뿐인데 왜 그럴까? 세 ..
[JAVA] 오버라이딩(overriding) JAVA의 정석(2nd Editionm) (남궁 성 著) 238p~246p 를 참조해 코드를 작성했으며개인적인 공부 내용을 적은 것이므로 오류가 있을 수 있습니다. 0. 들어가기에 앞서 오버라이딩은 상속(inheritance)와 관련이 깊은 내용이다. 따라서 공부하기 이전에 상속에 대한 내용을 충분히 숙지하기 바란다. (링크 : http://whatisthenext.tistory.com/19) 공부하면서 객체지향 프로그래밍은 "효율화"를 지향한다고 느꼈다. 효율화에 관점에서 본다면, 왜 상속이 필요한지, 왜 오버라이딩이 필요한지 조금이나마 알 수 있을 것 같다. 1. 오버라이딩(overriding) 조상 클래스로부터 상속받은 메서드(method) 내용을 자식 클래스에서 변경(변수 또는 메서드)하는 것. ..
[JAVA] 상속(Inheritance) JAVA의 정석(2nd Editionm) (남궁 성 著) 222p~237p 를 참조해 코드를 작성했으며 개인적인 공부 내용을 적은 것이므로 오류가 있을 수 있습니다. 0. 들어가기에 앞서 유교 문화의 관점에서 "부모가 자식보다 더 큰 존재다."라고 한다면 왼쪽 그림이 맞을 것이다.하지만 자바에서는 그렇지 않다. Child는 Parent의 재능(인스턴스)을 상속받아 더 많은 활동을 할 수 있다. 만약 부모가 talk, calculate, draw라는 메서드를 가지고 있다면, 고스란히 자식도 그 기능을 사용할 수 있다.따라서, 자손 클래스는 항상 조상 클래스보다 같거나 많은 멤버를 갖게 된다. 조상 클래스 - 부모(parent) 클래스, 상위(super) 클래스, 기반(base)클래스자손 클래스 - 자식(c..
[안드로이드] 리스트뷰(ListView) ※ 저는 안드로이드 프로그래밍 정복(김상형 著, 한빛미디어) 책을 이용해 공부하고 있으며예제와 코드는 이 책을 통해 공부중임을 밝힙니다.개인적인 공부를 하면서 정리한 형식이기 때문에 심각한 오류가 있을 수 있습니다. 피드백 주시면 정말 감사하겠습니다. ※ 안드로이드 프로그래밍 정복(549p~567p) 참조 리스트뷰 형태를 갖고 있다. 레이아웃을 이렇게 준비하고, 아래처럼 코드를 구성한다데이터 준비 - 어댑터 준비 - 어댑터 연결의 과정을 거친다는 것을 알 수 있다. 1. 데이터 준비 단계 ArrayList 객체를 생성하고, 이름 문자열을 추가했다. 2. 어댑터 준비 단계데이터와 리스트뷰를 연결할 "어댑터(Adapter"를 생성한다.또한, 항목(list)들이 모두 문자열이고 배열 형태로 저장되어 있으므로A..
[안드로이드] 어댑터뷰(Adapter View) ※ 저는 안드로이드 프로그래밍 정복(김상형 著, 한빛미디어) 책을 이용해 공부하고 있으며예제와 코드는 이 책을 통해 공부중임을 밝힙니다.개인적인 공부를 하면서 정리한 형식이기 때문에 심각한 오류가 있을 수 있습니다. 피드백 주시면 정말 감사하겠습니다. ※ 안드로이드 프로그래밍 정복(549p~567p) 참조 우리가 앱에서 가장 많이 보는 형태가 리스트뷰가 아닐까 싶다. 리스트뷰, 그리드뷰, 스피너, 갤러리를 묶어서 어댑터(Adapter)라고 부른다.어댑터 뷰(Adapter View)는 ViewGroup으로부터 파생되어 터치 입력도 받는다. 우리가 흔히 노트북에 사용하는 어댑터(Adapter)라고 부르는 부분이 있다. 간단하게 생각해서 "변환"을 해주는 다리 역할이라고 보면 된다. 그렇다면 어댑터 뷰라는 말..