본문 바로가기

Programming33

[자프실] 7. 컬렉션과 제네릭 7.1 컬렉션과 제네릭 개념 컬렉션의 중요성과 개념 컬렉션: 요소(element)라고 불리는 가변 개수의 객체들의 저장 컬렉션을 위한 자바 인터페이스와 클래스 컬렉션의 특징 컬렉션은 제네릭(generics)이라는 기법으로 구현되어 있다. 컬렉션의 요소는 객체들만 가능하다. 제네릭의 기본 개념 제네릭: 모든 종류의 타입을 다룰 수 있도록, 클래스나 메소드를 일반화된 타입 매개 변수(generic type)를 이용하여 선언하는 기법 제네릭 타입 매개 변수 : 컬렉션 클래스에서 타입 매개 변수로 사용하는 문자는 다른 변수와 혼동을 피하기 위해 일반적으로 하나의 대문자를 사용한다. 7.2 제네릭 컬렉션 활용 Vector : 배열을 가변 크기로 다룰 수 있게 하고, 객체의 삽입, 삭제, 이동이 쉽도록 구성한 컬렉.. 2024. 1. 7.
[자프실] 6. 모듈과 패키지 개념, 자바 패키지 활용 6.1 패키지 패키지의 개념과 필요성 패키지: 서로 관련 있는 클래스나 인터페이스의 컴파일된 클래스(.class) 파일들을 하나의 디렉터리에 모아 놓은 것 자바의 모듈과 패키지, 클래스 경로명 패키지 사용하기, import 문 6.2 패키지 만들기 패키지 선언 6.3 모듈 개념 모듈: 여러 개의 패키지들을 모은 것 자바 플랫폼의 모듈화 모듈 기반의 자바 실행 환경 자바 모듈화의 목적 6.4 자바 JDK에서 제공하는 패키지 JDK의 주요 패키지 JDK(Java Development Kit): 자바 API : 화면 출력, 키 입력, 네트워킹 등 프로그램 개발에 필요한 기본적인 기능과 다양한 응용 기능을 구현한 많은 클래스와 인터페이스들을 포함하는 표준 패키지를 제공한다. 6.5 Object 클래스 Objec.. 2024. 1. 5.
[자프실] 5. 상속 5.1 상속의 개념 상속의 필요성 5.2 클래스 상속 & 객체 자바의 상속 선언 상속과 객체 /* * 예제 5-1 * (x,y)의 한 점을 표현하는 Point 클래스 * Point 클래스를 상속받아 점에 색을 추가한 ColorPoint 클래스 */ // Point 클래스 class Point{ private int x, y; public void set(int x, int y) { this.x = x; this.y = y; } public void ShowPoint() { System.out.println("(" + x + ", " + y + ")"); } } // ColorPoint 클래스 class ColorPoint extends Point{ String color; public void setCo.. 2024. 1. 5.
[자프실] 4. 클래스와 객체 4.1 객체 지향과 자바 세상 모든 것이 객체다. 자바의 객체 지향 특성 ▶ 캡슐화(encapsulation): 객체를 캡슐로 싸서 그 내부를 보호하고 볼 수 없게 만든 것 클래스(class): 객체의 모양을 선언한 틀 실체(instance): 객체 ▶ 상속(inheritance): 상위 객체의 속성이 하위 객체에 물려져서, 하위 개체가 상위 개체의 속성을 모두 가지는 관계 확장(extends): 자식 클래스가 부모 클래스의 속성을 물려받아 부모 클래스에 기능을 확장하는 것 슈퍼 클래스(super class): 부모 클래스 서브 클래스(sub class): 자식 클래스 : 상속은 슈퍼클래스에 만들어진 필드와 메소드를 물려받음으로써 코드의 중복 작성을 방지하고, 코드를 재사용함으로써 코드 작성에 드는 시간.. 2024. 1. 4.
[컴프실] 제13장: 구조체 자료형의 분류 구조체의 필요성 // 구조체 struct student { int number; //학번 char name[10]; //이름 double grade; //학점 }; 배열과 구조체 배열: 서로 같은 타입의 변수들을 묶는다. 구조체: 서로 다른 타입의 변수들을 묶는다. 구조체 선언 // 구조체 선언: struct struct student { // 구조체 이름 int number; // 구조체 멤버 char name[10]; double grade; }; 구조체 선언의 예 // x값과 y값으로 이루어지는 화면의 좌표 struct point { int x; int y; }; // 날짜 struct date { int month; int day; int year; }; // 사각형 struct r.. 2023. 8. 29.
[컴프실] 제12장: 문자와 문자열 문자열 표현 방법 문자열(string): 문자들이 여러 개 모인 것 문자열 변수: 변경 가능한 문자열을 저장할 수 있는 변수 NULL 문자 : 문자열의 끝을 나타낸다. #include int main(void) { int i; char str[4]; str[0] = 'a'; str[1] = 'b'; str[2] = 'c'; str[3] = '\0'; //NULL 문자 i = 0; while (str[i] != '\0') { printf("%c", str[i]); i++; } return 0; } 문자 배열의 초기화 char str[4] = {'a', 'b', 'c', '\0'}; 문자열의 출력 char str[] = "abc"; printf("%s", str); #include int main(void).. 2023. 8. 27.
[컴프실] 제11장: 포인터 포인터란? 포인터: 주소를 가지고 있는 변수 변수는 어디에 저장되는가? 변수는 메모리에 저장된다. 메모리는 바이트 단위로 액세스된다. 변수와 메모리 변수의 크기에 따라서 차지하는 메모리 공간이 달라진다. 변수의 주소 변수의 주소를 계산하는 연산자: & 변수 i의 주소: &i //변수의 주소 출력하기 #include int main(void) { int i = 10; char c = 69; float f = 12.3; printf("i의 주소: %p\n", &i); printf("c의 주소: %p\n", &c); printf("f의 주소: %p\n", &f); return 0; } 포인터의 선언 포인터: 변수의 주소를 가지고 있는 변수 포인터와 변수의 연결 int i = 10; //정수형 변수 i 선언 i.. 2023. 8. 11.
[컴프실] 제10장-2: 정렬 정렬이란? : 물건을 크기순으로 오름차순이나 내림차순으로 나열하는 것 선택정렬(selection sort) : 정렬이 안 된 숫자들 중에서 최솟값을 선택하여 배열의 첫 번째 요소와 교환 //선택정렬 #include #define SIZE 10 int main(void) { int list[SIZE] = { 0, 3, 4, 1, 9, 8, 2, 5, 6, 7 }; int i, j, temp, least; for (i = 0; i < SIZE - 1; i++) { least = i; //최솟값 = i for (j = i + 1; j < SIZE; j++) //i뒷부분부터 i와 비교함 if (list[j] < list[least]) //i보다 작으면 least = j least = j; temp = list[.. 2023. 7. 23.
[컴프실] 9~12일차 실습문제 9일차 실습문제 //문제7 #define _CRT_SECURE_NO_WARNINGS #include int main(void) { char ch1, ch2; printf("ch1, ch2 입력(ch1 2023. 7. 20.