728x90
🟩 ch12. 스윙 컴포넌트들 ch12. 스윙 컴포넌트들 12-1. 스윙 컴포넌트에 이미지 표시 거의 모든 스윙 컴포넌트에는 이미지를 추가로 표시 O [스윙 컴포넌트에 이미지 표시] : ImageIcon 클래스 사용 1) ImageIcon 클래스의 객체 생성 ImageIcon은 JPEG, GIF, PNG 파일을 읽을 수 있다. 경로지정 시, 절대 경로 or 상대경로 ImageIcon image = new ImageIcon(“image.gif”); 경로지정 X -> 자동으로 프로젝트 폴더 이미지 파일 불러옴 2) setIcon() 메소드 사용 -> 원하는 컴포넌트에 이미지 지정 JLabel label = new JLabel(“이미지 레이블”); label.setIcon(image);12-2. 체크 박스 [..
🟩 ch11. 그래픽 프로그래밍 ch11. 그래픽 프로그래밍 11-1. 그래픽 프로그래밍 기초 [자바 그래픽 사용하는 방법] 1) 전통 AWT 패키지 사용 2) 최근 java 2D API 사용_ 2차원 그래픽 구현 자바는 플랫폼에 독립적이기 때문에 어디서나 똑같은 모양의 그래픽 프로그램 작성 O >> 화면 위에 사각형, 원 그리는 프로그램 [프레임 생성] 스윙에서는 JFrame 클래스의 인스턴스가 바로 프레임이 된다. [패널 생성] 컨테이너 역할하는 JPanel 클래스의 인스턴스 생성 후 -> 프레임 객체에 추가하면 된다. 패널 내부에는 JPanel 클래스의 paintComponent() 메소드를 재정의 → 이 메소드 내부에 실질적으로 그림 그리는 코드를 작성해야 한다. paintComponent() 메..
ch04. 클래스와 객체 04-1. 객체 지향의 개념 [객체 지향] : 다양한 기능 객체들이 존재하고, 이러한 객체들을 조합하여 원하는 기능 구현하는 기법 -프로시저(함수)를 기반으로 하는 프로그래밍 방법 -전체 프로그램은 함수들의 집합 -설계 방법 : 하향식 설계(top down design) - 단점 : 데이터와 함수가 분리된다. 1) 과도한 전역 변수의 사용 : 전역변수는 모든 함수에 대하여 개방되기 때문에 어떤 함수든지 쉽게 데이터 변경 가능 2) 프로그램의 이해 어려움 : 프로그램의 복잡도 일정 수준 넘어가면 코드의 이해가 어렵다. 3) 프로그램 변경 확장의 어려움 : 프로그램의 복잡도 높아질수록, 프로그램 수정도 어려워진다. ex) 어떤 함수를 수정할 경우 다른 함수들의 영향 받는 경우 多 -..
🟩 Ch10. 사용자 이벤트 처리 ch10. 사용자 이벤트 처리 10-1. 이벤트 구동 프로그래밍 [이벤트 구동 프로그래밍] 이벤트 발생 시, 연결된 컴포넌트에 대해 이벤트 리스너 토대로 적절 처리 프로그래밍 방식 이벤트에 의하여 실행 순서가 결정되는 방식 이벤트 발생 → 이벤트 객체 생성 -> 컴포넌트에 등록된 이벤트 리스너가 이벤트 처리 [이벤트 리스너 작성 과정] (1) 리스너 인터페이스를 구현한 ‘이벤트 리스너 클래스 작성’ class 이벤트리스너 implement 리스너 인터페이스 { ... }(2) 컴포넌트에 이벤트 리스너 객체 등록 컴포넌트 . add____Lister(new 리스너 객체());[이벤트 객체] 이벤트 객체: 발생된 이벤트에 대한 모든 정보를 리스너로 전달 이벤트 객체 내부 g..
ch03. 함수와 문자열 03-1. 함수 -특정 기능 수행하여 결과값 반환하는 함수 [함수 정의 형식] 반환형 함수이름 (매개변수) { //내부 작성 } [함수 원형 정의] -함수 사용하기 전에 컴파일러에게 사용할 함수 정보 알려주는 것 -내부 실행부가 없고 ;(세미콜론)만 붙여줘서 함수 원형 정의 반환형 함수이름 (매개변수) ; [함수 매개변수에 인수 전달 방법] (1) 값으로 호출 (call-by-value) -인수의 값이 매개변수로 복사되어 전달 -원본 변수에는 영향 X (2) 참조로 호출 (call-by-reference) -원본 변수가 매개변수로 전달 -원본 변수 값에 영향 O (ㅇ참조자가 참조하는 원본변수의 값이 변경됨) - C++: (포인터X) 참조자 선언하여 호출 &참조자: 원본변수에 대한..
ch02. 제어 구조와 배열 02-1. 제어 구조 [프로그램의 제어구조] 순차 구조 : 순차대로 프로그래밍 선택 구조 : if문, switch문 반복 구조 : for문, whiile문 [if-else문 형식] if (조건식) { } else{ } [if-else if-else 문 형식] if (조건식 1) { } else if (조건식 2){ } else{ } [switch문 형식] switch (선택값 ) { //선택값 일치하는 case문 실행 case 값1: break; case 값2: break; default: break; } [while문 형식 ] while (조건식) { //조건식이 참인 동안 반복 ..// } [do-while문 형식 ] do { }while(조건식) ; [for문 형식] f..
🟩 Ch09. 인터페이스/람다식/패키지 09-1. 인터페이스 개요 [인터페이스] 클래스 간 상호작용의 표준 규격 규격 안에 합의된 추상 메소드 작성 인터페이스 내부에는 기본적으로 추상 메소드, 상수만 선언 가능(자동 처리됨) [구현 클래스] implement 키워드 인터페이스를 구현한 클래스 내부에는 반드시 인터페이스의 추상 메소드 전부를 재정의 이후 실행 메소드에서 구현 객체 생성하여 사용 O [인터페이스 VS 추상클래스] : 자체로 객체 생성 불가능 추상 클래스 : 하위 실체 클래스들의 공통 속성들을 내부에 선언해둔 클래스 : 내부에 (공통 속성이기만 하면) 인스턴스(일반) 필드, 메소드도 정의할 수 O 인터페이스 : 기본적으로 내부에 추상 메소드와 상수변수만 선언 허용함 관련된 클래스 사이에서 공통..
[객체지향 프로그래밍]_[C++] ch01. C++언어 기본 [절차지향 프로그래밍] - 주어진 작업을 함수들로 분리하여 처리 [객체지향 프로그래밍] - 주어진 작업을 객체들로 분리하여 처리 - 최대목표 = ‘코드의 재사용’ * C++: C언어에 객체지향 프로그래밍 기능을 추가해서 만든 언어 (C언어와의 호환성O) : 기계어 코드를 생성하기 때문에 다른 종류의 컴퓨터에서는 실행 불가능 -> 빠른 속도 실행 O, 고성능 소프트웨어에 유리 : 가상 기계 코드를 생성하기 때문에 다른 종류의 컴퓨터에서도 바로 실행 O -> 이식성 있는 프로그램 작성에 유리 [C++ 프로그램 개발 단계] -텍스트 에디터로 소스파일(.cpp 파일) 작성 -> 컴파일 -> 실행파일(.exe 파일) -> 실행 [비주얼 스튜디오 사용] ..
ch05. 함수 05-1. 함수 만들기 [함수의 기본 생성] def 함수이름 (매개변수) : 코드 [함수 매개변수] -함수 생성 시 괄호 내부에 입력된 식별자 (매개변수) -함수 호출 시 매개변수 개수를 일치시켜서 매개값 넣어 호출해주어야 함 ; 함수 생성 시 매개변수와 호출 시 입력한 매개값 개수 불일치 시 예외 [가변 매개변수] : ( *변수 ) 형태 -함수 선언 시, ‘가변 매개변수’로 선언해두면, 해당 함수 호출 시 매개변수를 원하는 만큼 넣을 수 있다. -호출 시 넣은 매개값들을 [리스트]처럼 받는다. def 함수이름 (일반매개, 일반매개, ..., *가변매개): - 가변 매개변수 뒤에 일반 매개변수 올 수 X - 하나의 함수에 가변 매개변수 ‘하나만’ 사용 O [기본 매개변수] : (변수 = ..
🟩 ch08. 그래픽 사용자 인터페이스 08-1. GUI(그래픽 사용자 인터페이스) 📌 GUI를 제공하면 사용자가 사용하기 쉬워진다. 자바에서는 GUI도 ‘객체’로 만든다. [AWT와 스윙] AWT : 자바 초기 제공 GUI. 컴포넌트가 플랫폼에 종족적이라 일관된 화면 제공 X 스윙(多): 업그레이드 버전 GUI. 컴포넌트가 자바로 작성되어서 일관된 화면 제공 O : 스윙에 속하는 클래스들은 모두 앞에 J 붙임 [스윙 패키지] java.awt : GUI 컴포넌트를 위한 부모 클래스 제공. Color, Point클래스 포함 java.awt.event : GUI 컴포넌트로부터 발생되는 이벤트 처리할 클래스, 인터페이스 제공 java.awt.swing : GUI 컴포넌트 제공 (버튼, 텍스트 필드, 프레임, ..
ch04. 반복문 cf. [기본 자료형] = 어떤 하나의 값을 저장할 수 있는 자료형 (문자열, 숫자, 불) 리스트 = 여러 개의 값을 인덱스를 기반으로 저장할 수 있는 자료형 딕셔너리 = 여러 개의 값을 키를 기반으로 저장할 수 있는 자료형 04-1. 리스트와 반복문 [리스트 선언, 생성] -리스트 생성 방법 : 대괄호[]에 요소를 쉽표로 구분해서 입력 -리스트 내부에 여러 종류의 자료형 구성 O [리스트 내부 요소 접근] -리스트 이름.[ ] : 리스트 이름 뒤에 대괄호로 인덱스 위치 지정하여 접근 -리스트 이름.[ : ] : 접근할 인덱스 범위 선택하여 접근 가능 1) 대괄호 안에 음수 넣으면 리스트 뒤에서부터 요소 접근 O ex) list [-1] : 맨 뒤에 있는 요소에 접근 2) 리스트 접근 ..
ch03. 조건문 03-1. 불 자료형과 if 조건문 [불 만들기 : 비교 연산자] -불은 비교 연산자를 통해 만들 수 있다. ex) 10 True 반환 -파이썬은 문자열에도 비교 연산자 적용O 한글은 사전 순서로 값 비교됨 ==, !=, , = [불 연산하기 : 논리 연산자] -불 끼리는 논리 연산자를 사용해 연산할 수 있다. not, and, or not 연산자: 참, 거짓 반대로 바꿀 때 사용 and 연산자: 모두 참일 때 True 반환 or 연산자: 하나라도 참일 때 True 반환 [if 조건문이란?] -if 조건문 : 조건에 따라 코드 실행 흐름 변경하는 구문 if 조건표현식: 실행문 [날짜/시간 활용 프로그램 작성] 1) 현재시각 받아서 오전 오후 구분 프로그램 import datetime n..