전체 글

기초 #11. 중첩 인터페이스와 익명 객체 (+예제 1,2)
중첩 클래스를 다뤘으니 이제 중첩 인터페이스를 다루겠다. 중첩 인터페이스 ---------------------------------------------------------------------------------------- ▶클래스 내부에 선언한 인터페이스 ▶주로 UI 작업을 위한 이벤트에 많이 활용된다. ▶인터페이스를 클래스 내부에 선언하는 이유? 해당 클래스와 긴밀한 관계를 맺는 구현 클래스를 만들기 위해서. 예제 --------------------------------------------------------------------------------------------------------------------------------- 1. 내부에 중첩 인터페이스 보유한 클래스 코드 ..

기상청 날씨 데이터 cmd창에서 직접 불러오기
이전 글처럼 데이터를 불러올 경우, 다른 지역의 날씨를 알아보려고 할때마다 메모장을 고쳐줘야하는 불편함이 있다. 그래서 파이썬 코드 수정 없이 cmd창에서 'python ex03.py 108' 과 같이 입력하면 바로 해당 지역날씨를 불러오는 방법에 대해 공부하겠다. sys 모듈 --------------------------------------------------------------------------------------------------------------------------------- ▶위의 명령줄에서 108을 명령줄 인수(매개변수) 라고 한다. 사실 'python ex03.py 108' 에서 명령줄 인수는 ex03.py 와 108 두 개이다. (python은 명령줄 인수 X) ▶이..

기상청 날씨 데이터불러오기
웹스크레이핑 라이브러리인 Beautiful soup 를 활용하기전에! 파이썬 언어로 직접 데이터를 가져오는 방법을 공부해보자. ▶데이터를 전송하는 방식 : post / get - Post 방식 ; header에 붙여서 전송 - get방식 ; url을 통해 전송 (url 뒤에 구분자(?, &) 이용해서 server에 요청하는 방식) ▶이번에 우린 get 방식을 이용할 것이다. 기상청 사이트에서 데이터를 추출하는 방법 --------------------------------------------------------------------------------------------------------------------------------- ▶기상청 사이트에 있는 배너 같은 필요없는 것들은 추출할 필요..

기초 #10. 추상 클래스 Shape (추상클래스 예제편)
▶추상클래스에는 추상메서드와 일반 메서드 둘다 정의될 수 있고, ▶추상메서드를 정의할 때는 블록 구현이 없는 것이 특징이다. 1. 추상 클래스 Shape 코드와 상속받는 두 클래스 Rect, Tri public abstract class Shape { double area;//만약 final static double area;로 선언한다면 하위클래스에서 사용하지 못함. public abstract void draw(double w, double h);//블록{}이 구현되지않은 추상메서드! 무조건 재정의. final static void function() { System.out.println("추상 클래스의 정적 메서드입니다. 재정의 못해요."); } } class Rect extends Shape { ..

기초 #9. 인터페이스 Soldier (인터페이스 예제편)
이전 글에서 적은 예제인 RemoteControl 인터페이스보다 더 기본에 충실한 예제를 적어보겠다. 1. 인터페이스 Soldier 코드 ▶인터페이스에는 기본적으로 상수와 추상메서드가 있다. ▶인터페이스에는 구현할 클래스들의 공통요소를 정의만 해놓는 역할을 한다. ▶군인의 공통점으로는 팔다리가 있고, 먹고,일하고,놀고,자고,경례를 한다는 점이다. public interface Soldier { final static int arm = 2; int Legs = 2;//컴파일과정에서 자동으로 final static이 붙어, 외부에서 변경 불가능하다. public abstract void eat(); void work();//abstract키워드를 쓰지않아도 추상메서드. why? body {}가 없으니까. v..

기초 #8. 인터페이스 (+익명 구현 객체)
인터페이스란 ▶하나의 틀, 규격을 말한다! ▶생성자가 없다. (인터페이스에서는 생성의 개념이 없다.) ▶추상클래스와 목적이 같은데, 즉 지정받거나 상속받는 클래스들의 공통요소를 묶기 위함이다. 하지만 추상클래스와는 차이점이 있다. ▶추상클래스와 인터페이스의 차이점 인터페이스 추상클래스 동작 가능성 (생성자 유무) (단, 추상메서드일 경우)동작 실행 개념이 없기 때문에 실질적인 동작구현(블록 {})이 없다. (생성자 X) 실행 개념이 있는 일반 메서드는 구현할 수 있지만 추상메서드의 경우, 동작구현을 하지 않는다.(블록 {}이 없다.) 재정의 강제성 인터페이스에서 정의한 요소를 하위클래스가 모두 재정의하도록 강제성을 부여한다. 재정의 강제성은 있지만 하위클래스가 필요한 요소를 선택해서 쓸수 있다. ** 동..