본문 바로가기
반응형

전체 글271

정보처리기사 정처기 | 실기 6 프로그래밍 언어 활용 | C언어, 자바, 파이썬 | 단원별 정리 ✅ 15. C언어 절차 지향적인 프로그래밍 언어로 컴퓨터가 실행해야 하는 순서대로 프로그램을 작성한다. 다양한 데이터 타입과 연산자를 제공하며, 메모리 관리에 대한 직접적인 제어가 가능하다. 운영체제, 임베디드 시스템, 네트워크, 게임 등 다양한 분야에서 활용한다. 💡 자료형 메모리에 데이터가 저장되는 형식이다. 정수형 char: %c, 1바이트, -128 ~ 127 short: %d, 2바이트, -32,768 ~ 32,767 int: %d, 4바이트, -2,147,483,648 ~ 2,147,483,647 long: 4바이트, -2,147,483,648 ~ 2,147,483,647 long long: 8바이트, -9,223,372,036,854,775,808 ~ +9,223,372,036,854,775.. 2023. 3. 8.
정보처리기사 정처기 | 실기 5 인터페이스 구현 | 인터페이스 설계 확인, 인터페이스 기능 구현, 인터페이스 구현 검증 | 단원별 정리 ✅ 핵심 키워드 EAI, Enterprise Application Integration 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션 간의 정보를 전달, 연계, 통합이 가능하도록 해주는 솔루션이다. ESB, Enterprise Service Bus 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션들의 간을 하나의 시스템으로 관리 운영할 수 있도록 서비스 중심의 통합을 지향하는 아키텍처이다. JSON, JavaScript Object Notation 속성-값 쌍 또는 키-값 쌍으로 이루어진 데이터 오브젝트를 전달하기 위해 인간이 읽을 수 있는 텍스트를 사용하는 개방형 표준 포맷이다. XML, Extensible Markup Language HTML의 단점을 보완한 인터넷 언어로, SGML의 복잡한 .. 2023. 3. 8.
정보처리기사 정처기 | 실기 4 통합 구현 | 연계 메커니즘 구성, 내외부 연계 모듈 구현 | 단원별 정리 ✅ 핵심 키워드 연계 메커니즘 응용 소프트웨어와 연계 대상 모듈 간의 데이터 연계 시 요구사항을 고려한 연계방법과 주기를 설계하기 위한 흐름이다. 커넥션 풀(Connection Pool) 데이터베이스와 연결된 커넥션을 미리 만들어서 풀(pool) 속에 저장해 두고 필요할 때 커넥션을 풀에서 가져다가 쓰고 다시 풀에 반환하는 기법이다. JDBC, Java Database Connectivity 데이터베이스에서 자료를 조회하거나 업데이트하기 위해서 자바에서 데이터베이스에 접속할 수 있도록 하는 자바 API이다. API, Application Programming Connectivity 응용 프로그램에서 사용할 수 있도록, 운영체제나 프로그램 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스이다. 소켓(.. 2023. 3. 8.
정보처리기사 정처기 | 실기 3 데이터 입출력 구현 | 논리 데이터 저장소 확인, 물리 데이터 저장소 설계, 데이터베이스 기초 활용하기 | 단원별 정리 ✅ 핵심 키워드 논리 데이터 모델링 데이터베이스 설계 프로세스의 기초 설계 단계로 비즈니스 정보의 구조와 규칙을 명확하게 표현할 수 있는 기법이다. 물리 데이터 모델링 관계 데이터 모델링으로도 불리며 논리적 데이터 모델을 DBMS의 특성, 기능, 성능 등을 고려하여 데이터베이스의 물리적인 구조(Schema)를 작성해 나가는 기법이다. 정규화(Nomalization) 관계형 데이터 모델에서 데이터의 중복성을 제거하여 이상 현상을 방지하고, 데이터의 일관성과 정확성을 유지하기 위해 무손실 분해하는 과정이다. 데이터 마이닝(Data Mining) 대규모로 저장된 데이터 안에서 체계적이고 자동적으로 통계적 규칙이나 패턴을 찾아내는 기술이다. ✅ 6. 논리 데이터 저장소 확인 💡 데이터 모델 현실 세계의 데이터를.. 2023. 3. 8.
정보처리기사 정처기 | 실기 2 화면 설계 | UI 요구사항 확인, UI 설계 | 단원별 정리 ✅ 핵심 키워드 UI, User Interface 넓은 의미에서 사용자와 시스템 사이에서 의사소통할 수 있도록 고안된 물리적, 가상의 매개체이다. 프로토타입(Prototype) 컴퓨터 시스템이나 소프트웨어의 설계 또는 성능, 구현 가능성, 운용 가능성을 평가하거나 요구사항을 좀 더 잘 이해하고 결정하기 위하여 전체적인 기능을 간략한 형태로 구현한 시제품이다. UML, Unified Modeling Language 객체 지향 소프트웨어 개발 과정에서 산출물을 명세화, 시각화, 문서화할 때 사용되는 모델링 기술과 방법론을 통합해서 만든 표준화된 범용 모델링 언어이다. 클래스 다이어그램(Class Diagram) 객체 지향 모델링 시 클래스의 속성 및 연산과 클래스 간 정적인 관계를 표현한 다이어그램이다. 소.. 2023. 3. 8.
정보처리기사 정처기 | 실기 1 요구사항 확인 | 소프트웨어 개발 방법론, 현행 시스템 분석, 요구사항 확인 | 단원별 정리 ✅ 핵심 키워드 애자일 방법론 절차보다는 사람이 중심이 되어 변화에 유연하고 신속하게 적응하면서 효율적으로 시스템을 개발할 수 있는 신속 적응적 경량 개발 방법론이다. 객체 지향 분석(OOA, Object Oriented Analysis) 사용자의 요구사항을 분석하여 요구된 문제와 관련된 모든 클래스(객체), 속성과 연산, 관계를 정의하여 모델링하는 기법이다. 디자인 패턴 소프트웨어 공학의 소프트웨어 설계에서 공통으로 발생하는 문제에 대해 자주 쓰이는 설계 방법을 정리한 패턴이다. 요구사항 분석 도출된 요구사항 간 상충을 해결하고 소프트웨어의 범위를 파악하여 외부 환경과 상호 작용하는 것을 분석하는 과정이다. 소프트웨어 아키텍처(Software Architecture) 시스템에 대한 기본 조직 체계로 시.. 2023. 3. 8.
리액트 React | CRA, Create React App: 리액트 애플리케이션 개발을 위한 보일러플레이트 - 폴더 구조 ✅ CRA, Create React App CRA, Create React App는 리액트(React) 애플리케이션을 개발할 때 사용하는 보일러플레이트(Boilerplate)입니다. 보일러플레이트는 개발자들이 프로젝트를 빠르게 시작하고, 일관된 구조와 설정을 가진 애플리케이션을 개발할 수 있도록 도와줍니다. CRA를 사용하면 바벨(Babel)이나 웹팩(Webpack)과 같은 빌드 도구 없이도 간편하게 리액트 프로젝트를 설정할 수 있습니다. 💡 CRA 설치하기 React 앱을 생성할 폴더를 만듭니다. VSCode나 다른 텍스트 편집기에서 해당 프로젝트 폴더를 엽니다. 터미널을 열고 다음 명령어를 입력하여 React 앱을 생성합니다. npx create-react-app . 터미널에서 명령어 [npm sta.. 2023. 3. 8.
리액트 React | React 웹 개발 환경 구축: Node.js, npm, npx ✅ React 웹 개발 환경 React는 사용자 인터페이스(UI)를 구축하기 위한 JavaScript 라이브러리입니다. React를 개발하기 위한 환경을 구축하는 것은 프로젝트를 시작하는 첫 단계입니다. 이러한 환경을 구성하기 위해 다음과 같은 도구들이 사용됩니다. 💡 Node.js Node.js는 Chrome V8 JavaScript 엔진으로 구동되는 오픈소스 자바스크립트 런타임 환경입니다. Node.js는 서버 측 자바스크립트 실행을 위한 플랫폼으로 사용되며, React 개발에서는 바벨(Babel)과 웹팩(Webpack)과 같은 도구들을 사용하기 위해 필요합니다. Node.js는 비동기 이벤트 기반의 입출력 모델을 사용하여 가볍고 효율적인 네트워크 애플리케이션 개발을 가능하게 합니다. Babel: B.. 2023. 3. 7.
자바 Java | 접근제어자: 객체 지향 프로그래밍의 캡슐화 원칙과 예시 코드 ✅ 접근제어자 Access Modifiers 클래스, 변수, 메서드의 접근 범위를 제한하기 위하여 사용한다. 접근제어자는 객체 지향 프로그래밍의 캡슐화 Encapsulation 원칙을 구현한다. 💡 private 접근제어자 같은 클래스에서만 접근 가능하다. 다른 클래스에서 private 멤버에 접근하려면 public 메서드를 통해 접근한다. 객체 생성 후, 멤버 변수에 접근 가능하다. 객체 생성 후, 메서드를 호출하려면 같은 클래스에서만 접근 가능하다. 클래스 내부에서만 사용한다. class MyClass { private int myPrivateVar; private void myPrivateMethod() { System.out.println("Private method"); } } 💡 default.. 2023. 3. 7.
자바 Java | import문 사용법과 단축키 ✅ import문 다른 패키지의 클래스를 사용하려면 사용하려는 클래스명을 작성하는 과정을 가진다. import문을 사용한다면 클래스명에서 패키지명을 생략할 수 있다. import문은 컴파일러에게 클래스의 패키지에 대한 정보를 제공한다. 💡 import문 사용 파일의 맨 위에 작성한다. import문을 사용하여 가져온 클래스와 선언한 변수나 메서드의 이름이 중복되는 경우, 클래스명 앞에 패키지명을 붙여 구분한다. 모든 패키지와 클래스를 가져오는 import java.lang.*; 문장은 자동으로 삽입되므로 생략 가능하다. 여러 개의 클래스가 사용될 때, '*'를 사용하여 지정된 패키지에 속하는 모든 클래스를 사용할 수 있다. '*'를 사용한다고 하여 성능상의 차이가 있는 것은 아니다. import 패키지명.. 2023. 3. 7.
자바 Java | 패키지(Package)의 개념과 활용 방법 ✅ 패키지 Package 클래스, 인터페이스, 열거형 등을 논리적으로 그룹화한다. 디렉터리와 유사한 개념으로, 서브 패키지를 포함할 수 있다. 서로 다른 패키지에서 동일한 이름을 가진 클래스를 사용할 수 있다. 이름 공간(namespace)을 제공하여 클래스 이름 충돌을 방지한다. 접근 제한자를 활용하여 클래스나 변수에 대한 접근 권한을 설정할 수 있다. 💡 패키지 Package 선언 클래스 파일의 import문 보다 먼저, 첫 줄에 선언한다. 점(.)으로 구분된 계층 구조로 작성한다. 패키지명 대소문자를 모두 허용하지만 주로 소문자를 사용한다. 일반적으로 회사 도메인을 역순으로 사용한다. 길이는 제한이 없다. 클래스 파일의 상단에 package 예약어를 사용하여 패키지를 선언한다. package 패키지.. 2023. 3. 7.
정보처리기사 정처기 | 필기 5과목 정보시스템 구축 관리 | 기출문제 정리본, 두문자 ✅ 2022년 04월 24일 💡 81. 소프트웨어 개발에서 정보보안 3요소에 해당하지 않는 설명은? 기밀성(Confidentiality): 정보를 인가된 사용자만 접근할 수 있도록 보호하며, 불법적인 접근, 공개 또는 유출이 발생하지 않도록 보호한다. 무결성(Integrity): 데이터는 정확하고 완전하며 무결함을 유지해야 하며, 예기치 않은 변경이나 손상으로부터 보호되어야 한다. 가용성(Availability): 정보에 대한 접근이 허용되어, 사용자가 필요할 때 정보나 시스템에 접근한다. 휘발성(Volatility): 데이터나 정보가 메모리에 저장될 때, 전원이 차단되거나 시스템이 종료될 경우 정보가 지워진다. 💡 82. 어떤 외부 컴퓨터가 접속되면 접속 인가 여부를 점검해서 인가된 경우에는 접속이 허.. 2023. 2. 27.
정보처리기사 정처기 | 필기 4과목 프로그래밍 언어 활용 | 기출문제 정리본, 두문자 ✅ 2022년 04월 24일 💡 61. C언어에서 문자열 처리 함수의 서식과 그 기능의 연결로 틀린 것은? strlen(s): s의 길이를 구한다. strcpy(s1, s2): s2를 s1으로 복사한다. strcmp(s1, s2): s1과 s2를 연결한다. strrev(s): s를 거꾸로 변환한다. strcmp(s1, s2): 문자열 s1과 문자열 s2를 비교하여, s1이 s2보다 앞에 있으면 음수, s2가 s1보다 앞에 있으면 양수, 같으면 0을 반환하는 함수 strcat(s1, s2): 문자열 s2를 문자열 s1의 끝에 연결하는 함수 💡 62. 다음 C언어 프로그램이 실행되었을 때, 실행 결과는? #include int main(int argc, char *argv[]) { int a = 5, b =.. 2023. 2. 27.
정보처리기사 정처기 | 필기 3과목 데이터베이스 구축 | 기출문제 정리본, 두문자 ✅ 2022년 04월 24일 💡 41. 다음 조건을 모두 만족하는 정규형은? 테이블 R에 속한 모든 도메인이 원자 값으로만 구성되어 있다. 테이블 R에서 키가 아닌 모든 필드가 키에 대해 함수적으로 종속되며, 키의 부분 집합이 결정자가 되는 부분적 종속이 존재하지 않는다. 테이브 R에 존재하는 모든 함수적 종속에서 결정자가 후보키이다. BCNF 제1 정규형 제2 정규형 제3 정규형 [컴퓨터 과학/[정보처리기사] 필기&실기 개념] - 정보처리기사 정처기 | 정규화(Normalization) - 데이터베이스의 설계 과정 | 필기&실기 개념 정보처리기사 정처기 | 정규화(Normalization) - 데이터베이스의 설계 과정 | 필기&실기 개념 ✅ 정규화(Normalization) [도부이결다조] 정규화는 데.. 2023. 2. 27.
정보처리기사 정처기 | 필기 2과목 소프트웨어 개발 | 기출문제 정리본, 두문자 ✅ 2022년 04월 24일 💡 21. 통합 테스트(Integration Test)와 관련한 설명으로 틀린 것은? 시스템을 구성하는 모듈의 인터페이스와 결합을 테스트하는 것이다. 하향식 통합 테스트의 경우 넓이 우선(Breadth First) 방식으로 테스트를 할 모듈을 선택할 수 있다. 상향식 통합 테스트의 경우 시스템 구조도의 최상위에 있는 모듈을 먼저 구현하고 테스트한다. 모듈 간의 인터페이스와 시스템의 동작이 정상적으로 잘되고 있는지를 빨리 파악하고자 할 때 상향식보다는 하향식 통합 테스트를 사용하는 것이 좋다. 상향식 통합 테스트(Bottom Up Intergration Test): 모듈들을 작은 단위부터 조합하여 상위 단계로 통합하며 전체 시스템의 작동을 테스트하는 방법 하향식 통합 테스트(T.. 2023. 2. 27.
정보처리기사 정처기 | 필기 1과목 소프트웨어 설계 | 기출문제 정리본, 두문자 ✅ 2022년 04월 24일 💡 1. UML, Unified Modeling Language 다이어그램 중 순차 다이어그램(Sequence Diagram)에 대한 설명으로 틀린 것은? 객체 간의 동적 상호작용을 시간 개념을 중심으로 모델링하는 것이다. 주로 시스템의 정적 측면을 모델링하기 위해 사용한다. 일반적으로 다이어그램의 수직 방향이 시간의 흐름을 나타낸다. 회귀 메시지(Self-Message), 제어블록(Statement block) 등으로 구성된다. 순차 다이어그램(Sequence Diagram) 객체 간 상호작용을 메시지(Message)로 표현한다. 시간의 흐름을 나타내는 시간축(Time Axis)을 가진다. 객체 간의 상호작용을 표현한다. 💡 2. 메시지 지향 미들웨어(MOM, Message.. 2023. 2. 27.
오픽 OPIC | 오픽노잼 IM 시리즈 정리 ✅ OPIC 영어로 대화하는 능력을 평가한다. 발음, 억양, 어휘력, 문법적인 정확도, 언어 유창성뿐만 아니라 주제 이해도, 내용 파악, 주제와 관련된 정보 제공 능력도 중요하게 평가한다. 💡 난이도 5-5 1: 자기소개 2 - 3 - 4: 콤보 1 5 - 6 - 7: 콤보 2 8 - 9 - 10: 콤보 3 11 - 12 - 13: 롤 플레이 14 - 15: 어려운 질문 ✅ Rule 💡 Rule #1: Don't ask Ava questions. 어색한 질문보다 인정하는 식으로 말하는 것이 적절하다. Oh, so you wanna ~? Alright, well ~. : 상대방이 무언가를 원하고 있다는 것을 알아차리고 응답을 할 때 사용한다. "좋아, 그렇다면" Oh, so you wanna grab di.. 2023. 2. 26.
자바 Java | 상속(Inheritance) 개념과 구현 방법: 단일 상속, 상속 구현, super, Object 클래스 ✅ 상속 Inheritance 기존 클래스를 재사용하여 새로운 클래스를 작성하는 것이다. 코드의 재사용성을 높이고 코드의 중복을 제거하여, 생산성과 유지보수에 크게 기여한다. 💡 조상 Parent, Super / 자손 Sub 클래스 조상 클래스(Parent, Super class): 상속하는 클래스 자손 클래스(Sub class): 상속받는 클래스 조상 클래스는 자손 클래스의 멤버(필드, 메서드)를 사용할 수 없다. 자손 클래스는 조상 클래스의 모든 멤버(필드, 메서드)를 상속받는다. 자손 클래스는 조상 클래스의 모든 멤버(필드, 메서드)를 사용할 수 있다. 자손 클래스는 조상 클래스의 멤버(필드, 메서드)를 재정의하여 새로운 동작을 구현하는 오버라이딩(Overriding)을 할 수 있다. 자손 클래스는.. 2023. 2. 16.
자바 Java | 생성자(Constructor) 개념: 객체 초기화의 핵심, this() 키워드, 생성자 간 호출 방법 ✅ 생성자 Constructor 객체를 생성할 때 호출되어 인스턴스(Instance) 변수의 초기화를 담당하는 메서드이다. 생성자를 이용하여 객체를 생성하고, 다양한 형태의 생성자를 정의하여 사용한다. 클래스와 같은 이름을 가진다. 반환 타입이 없다. 인스턴스 변수를 초기화하기 위한 매개변수를 가질 수 있다. 객체를 생성할 때 반드시 호출된다. 생성자를 사용하여 객체를 생성할 때는 new 연산자를 사용하며, 객체 생성과 동시에 생성자가 호출된다. 생성자는 클래스 내에 여러 개 정의할 수 있으며, 매개변수의 개수나 타입에 따라 다른 생성자로 인식한다. 💡 생성자 조건 클래스와 같은 이름을 가져야 한다. 반환 타입이 없어야 한다. 객체 생성 시 반드시 호출되어야 한다. 클래스이름(타입 변수명, 타입 변수명,.. 2023. 2. 16.
자바 Java | 다형성(Polymorphism) 핵심: 오버로딩(Overloading)과 출력 다양성 ✅ 오버로딩 Overloading 같은 이름의 메서드를 여러 개 정의한다. 메서드의 이름은 같지만, 매개변수의 개수, 타입, 순서가 다르기 때문에 컴파일러는 각각의 메서드를 다른 메서드로 인식하여 처리한다. 오버로딩을 사용하면 메서드 이름을 다양하게 사용하지 않고도 같은 기능을 하는 여러 개의 메서드를 선언할 수 있다. 오버로딩된 메서드를 호출할 때는 전달하는 인자의 타입, 개수, 순서에 따라 알맞은 메서드가 선택되어 호출된다. 이를 매개변수의 다형성(Polymorphism)이라고 한다. 💡 다형성 Polymorphism 객체지향 프로그래밍에서 하나의 메서드나 클래스가 여러 개의 다른 동작을 수행할 수 있는 능력이다. 즉, 같은 코드에서 다양한 형태로 동작할 수 있다. 오버로딩(Overloading) 같.. 2023. 2. 16.
자바 Java | 호출 스택(Call Stack) 구조와 원리: 메서드 실행 과정의 이해 ✅ 호출 스택 Call Stack 메서드 호출의 실행 순서를 추적하는 자료구조이다. 메인 메서드(main method)가 호출되면, 메서드의 스택 프레임이 호출 스택에 쌓인다. 메인 메서드 내에서 다른 메서드를 호출하면, 해당 메서드의 스택 프레임이 호출 스택의 맨 위에 쌓인다. 호출된 메서드 내에서 다른 메서드를 호출하면, 해당 메서드의 스택 프레임도 호출 스택의 맨 위에 쌓인다. 호출된 메서드가 실행을 완료하고 반환(return)할 때, 해당 메서드의 스택 프레임을 호출 스택에서 제거한다. 호출된 메서드 내에서 예외가 발생하면, 해당 예외를 처리하기 위해 호출 스택을 따라서 예외 처리 구문으로 이동한다. 호출 스택에 있는 메서드들은 LIFO(Last-In-First-Out) 방식으로 처리되어, 호출 .. 2023. 2. 16.
자바 Java | 객체지향 프로그래밍(OOP)의 핵심 개념: 객체, 클래스, 메소드, 참조 변수에 대한 이해와 활용 방법 ✅ 객체지향언어(Object-Oriented Programming Language) 객체지향언어는 프로그램을 객체의 집합으로 구성하는 개념을 기반으로 한다. 코드를 모듈화 하고 각 객체들의 역할과 책임을 분리하여 코드의 재사용성과 관리성을 향상한다. Java: 객체지향 프로그래밍 언어로, 안정성, 이식성, 보안성 등이 뛰어나며, JVM을 이용하여 운영체제나 하드웨어와 독립적으로 실행 가능한 바이트 코드를 생성한다. C++: C 언어에 객체지향 프로그래밍 기능을 추가한 언어로, 시스템 프로그래밍, 임베디드 시스템, 게임 등에 사용한다. Python: 간결하고 읽기 쉬운 문법으로 인기 있는 동적 타이핑 언어로, 객체지향 프로그래밍뿐만 아니라 다양한 프로그래밍 패러다임을 지원한다. 💡 객체지향언어의 주요 특징.. 2023. 2. 16.
자바 Java | 문자열 다루기: String 클래스와 커맨드 라인 인자 사용 방법 ✅ String 클래스 Java에서 문자열을 다루기 위해 제공되는 클래스이다. 문자열을 다루기 위한 다양한 기능과 메서드를 제공한다. String 클래스의 인스턴스는 불변(immutable) 객체이다. String 클래스는 내부적으로 char 배열을 사용하여 문자열을 저장한다. 하지만 한 번 생성된 문자열은 내부적으로 변경될 수 없다. 문자열의 안정성을 보장하고, 문자열을 공유하는 다른 객체들과의 상호작용에서도 예기치 않은 동작을 방지한다. 문자열 조작이 많은 경우에는 StringBuilder나 StringBuffer 클래스를 사용한다. 💡 String 클래스의 메서드 length(): 문자열의 길이를 반환한다. String str = "Hello, world!"; int len = str.length(.. 2023. 2. 16.
자바 Java | 배열(Array) 다루기: 선언, 생성, 접근, Arrays 클래스 활용 ✅ 배열 Array 같은 타입의 여러 변수들을 하나의 묶음으로 다루는 자료구조이다. 배열을 사용하면 많은 양의 데이터를 쉽게 다룰 수 있으며, 여러 개의 변수를 선언하지 않아도 되기 때문에 코드의 가독성을 향상한다. Java에서 배열은 객체(Object)로 취급된다. 배열 변수는 배열의 시작 주소를 참조하며, 배열 요소에 접근하려면 배열 변수와 인덱스를 사용하여 접근한다. 💡 배열 선언 배열 선언은 배열을 생성하기 전에 해당 배열을 다루기 위한 참조 변수를 선언하는 과정이다. 데이터 타입 다음에 대괄호([])를 작성한다. 배열의 이름은 변수 이름과 같은 규칙을 따른다. 배열의 이름은 해당 배열을 다루기 위한 참조 변수의 이름으로 사용한다. 참조 변수는 해당 배열의 데이터 타입과 일치해야 한다. 데이터_타.. 2023. 2. 15.
자바 Java | break문과 continue문: 사용 방법과 주의할 점 ✅ break 문 제어문에서 사용되며, 자신이 포함된 가장 가까운 반복문(for, while, do-while)을 벗어나는 역할을 한다. 무한 루프: break문을 사용할 때 무한 루프를 방지하기 위해 조건문과 함께 사용한다. 그렇지 않으면 반복문이 끝나지 않고 무한 루프에 빠질 수 있다. 중첩된 반복문: 중첩된 반복문에서 break문을 사용할 때는 바깥쪽 반복문을 종료하려는 경우에만 사용한다. 안쪽 반복문을 종료하려는 경우에는 labeled break문을 사용한다. 코드 가독성: break문을 남발하면 코드의 가독성을 저하시킨다. break문이 필요한 경우에만 사용하고, 그렇지 않은 경우에는 다른 방법을 고려한다. 예외 처리: 예외 처리를 하는 경우에는 break문 대신 예외를 사용한다. 예외를 던지면.. 2023. 2. 15.
자바 Java | 비교 연산자: 대소 비교, 등가 비교, 문자열 비교 ✅ 비교 연산자 두 개의 피연산자를 비교하여 결과를 true 혹은 false로 반환한다. 비교 연산자는 주로 조건문(if-else, switch-case)과 반복문(for, while, do-while)에서 사용한다. 두 피연산자의 자료형이 다른 경우, 자동 형변환이 발생한다. 자동 형변환은 자료형의 범위가 작은 쪽에서 큰 쪽으로 형 변환된다. 동 형변환에 의해 예상치 못한 결과를 가져올 수 있으므로, 자료형을 명시적으로 일치시킨다. 💡 대소 비교 두 개의 피연산자의 값을 비교하여, 결과에 따라 true나 false를 반환한다. 기본 숫자형 변수(int, double, float, char, byte, short, long)에서 사용한다. 참조형 변수는 직접 값을 가지지 않기 때문에 대소 비교 연산자를 .. 2023. 2. 15.
자바 Java | 나머지 연산자 %: 음수 계산 규칙, 예외 처리 방법 ✅ 나머지 연산자 % 두 개의 피연산자를 받아 첫 번째 피연산자를 두 번째 피연산자로 나눈 나머지 값을 반환한다. 모든 기본형 숫자 타입(int, long, float, double, short, byte)에서 % 연산자를 지원한다. int remainder = dividend % divisor; int dividend = 7; int divisor = 3; int remainder = dividend % divisor; // remainder는 1이다. 조건문에서 홀수와 짝수를 구분하는 데 사용한다. int input = 5; if (input % 2 == 0) { System.out.println("짝수입니다."); } else { System.out.println("홀수입니다."); } 어떤 수가 .. 2023. 2. 15.
자바 Java | 자료형, 기본형 Primitive Type, 참조형 Reference Type, 형변환 | 매개변수, 논리형, 문자형, 정수형, 실수형 ✅ 기본형 Primitive Type 기본형 변수는 실제 값 data을 저장한다. 기본형의 종류와 크기는 반드시 알아두어야 한다. 논리형 boolean: 1 byte, true와 false 두 가지 값만 표현한다. 문자형 char: 2 byte, 유니코드를 사용한다. 정수형 byte: 1 byte short: 2 byte int: 4 byte, 정수형 기본 long: 8 byte 실수형 float: 4 byte double: 8 byte, 실수형 기본 💡 기본형 매개변수 Read Only 메소드를 호출할 때, 매개변수로 지정한 값을 메소드의 매개변수에 복사하여 넘긴다. 매개변수의 타입이 기본형 일 때, 기본형 값이 복사된다. 메소드의 매개변수를 기본형으로 선언하면, 단순히 저장된 값을 얻는다. d.x의 .. 2023. 2. 15.
자바 Java | 변수 Variable, 상수 Constant | 타입 변환 charAt(0), Integer.parseInt(), Double.parseDouble() | int, long, float, double, char, String ✅ 변수 Variable 변수 Variable는 하나의 값을 저장하는 공간이다. 변수가 필요하다면, 변수를 선언한다. 변수를 선언할 때, 변수의 타입을 선택한다. 💡 숫자 int: 정수 integer를 저장하기 위한 타입 long: 정수 integer를 저장하기 위한 타입, 20억 이상 float: 실수 floating point number를 저장하기 위한 타입, 7자리 double: 실수 floating point number를 저장하기 위한 타입, 15자리 문자 character을 숫자로 변환: '0'을 뺀다. '3' - '0' 문자열 string을 숫자로 변환: Integer.parseInt(), Double.parseDouble()을 사용한다. Integer.parseInt("127") Doub.. 2023. 2. 15.
자바 Java | 화면에 글자 출력하기 | print(), println(), printf() ✅ 출력 화면에 글자를 출력할 때는 print(), println(), printf()을 사용한다. 괄호() 안에 출력하고자 하는 내용을 넣는다. 💡 System.out.print(); 괄호 안의 내용을 출력하고, 줄 바꿈을 하지 않는다. 💡 System.out.println(); 괄호 안의 내용을 출력하고, 줄 바꿈을 한다. class Ex2_1 { public static void main(String args[]) { System.out.println("Hello, world");// 화면에 Hello, world를 출력하고, 줄바꿈을 한다. System.out.print("Hello"); // 화면에 Hello를 출력하고, 줄바꿈을 하지 않는다. System.out.println("World");.. 2023. 2. 15.
반응형