전체보기
-
💻 [OS 오퍼레이팅시스템] #7 | Process Scheduling 1 | Long-Term, Medium-Term, Short-Term, FCFS, SJF, SPN, Rount-Robin, SRT, HRRNCS/OS 2022. 4. 17. 18:50
💻 프로세스 스케쥴링의 종류 - Long-Term Scheduling (job scheduler) 장기 스케줄러. 프로세스가 처음 생성됐을 때 제일 처음으로 관여. 어떤 프로그램이 프로세싱을 위해 시스템에 추가될지 말지 결정. (큐 적재) 어떤 직업이 시스템의 자원을 차지할 것인지 결정 (New에서 ready 큐로 들어갈지 말지, Exit) - Medium-Term Scheduling (swapper) 중기 스케줄러. 어떤 프로세스들이 CPU를 할당받을 것인지 결정. 메인 메모리에 올라갈 프로세스의 수를 결정. 멀티프로그래밍 정도를 결정 (Blocked할지 말지) - Short-Term Scheduling (CPU scheduler) 단기 스케줄러. 프로세서에 의해 실행될 프로세스를 결정. 프로세스에 C..
-
🎮 [JAVA 자바] #9 | 자바 상속과 접근 지정, 메소드 오버라이딩, 상속과 생성자CS/Java 2022. 4. 17. 11:18
🎮 상속과 접근 지정 - 상속 (Inheritance) 객체 지향의 특성으로, 상위 개체의 속성이 하위 개체에 물려짐(재사용), 기존의 클래스로 새로운 클래스를 작성하는것 하위 개체가 상위 개체의 속성(필드, 메소드)을 모두 가지면서 확장하는 관계(확장) 자식 : sub class 부모 : super class - 장점 공통된 멤버를 가지는 클래스들을 정리하여 중복을 제거해 간결해진 클래스 구조를 가짐 클래스의 간결화, 계층적 분류로 관리 쉬움, 클래스 재사용과 확장 쉬움 - 자바의 상속 extends 사용. 상속 횟수 무제한, 단일 상속 지원 (다중 상속 지원 X) 자식 클래스의 멤버 개수 >= 부모 클래스의 멤버 개수 (생성자 예외) public class Person { ... } // Object..
-
🎮 [JAVA 자바] #8 | 자바 메소드와 접근 지정, 객체 배열, 인자 전달CS/Java 2022. 4. 17. 05:49
🎮 메소드와 접근지정자 - 메소드 클래스 멤버, C++의 함수와 동일 자바의 모든 메소드는 반드시 클래스 안에 있어야 함(캡슐화원칙) 접근지정자 + 리턴타입 + 메소드 이름 + ( 메소드 인자들 ) + { 메소드 코드 } Ex. public int getSum(int i, int j) { return i+j; } - 접근 지정자 private < 디폴트(접근 지정자 생략된 경우) < protected < public - private : 외부로부터 완벽차단. 같은 패키지의 다른 클래스 이용불가 - 디폴트 : 동일패키지에 허용 - protected : 동일패키지 + 자식클래스에 허용 - public : 모든 클래스에 허용. 다른 패키지의 클래스 이용가능 - 자바의 패키지 관련 있는 클래스 파일을 저장하는 ..
-
🎮 [JAVA 자바] #7 | 자바 클래스와 객체, 객체지향 프로그래밍, static, final, 메모리, 생성자CS/Java 2022. 4. 17. 05:20
🎮 객체지향 프로그래밍 - 객체지향 프로그래밍 (Object-Oriented Programming) 컴퓨터가 수행하는 작업을 객체들간의 상호작용으로 표현. 객체들의 집합으로 프로그램 작성 실세계의 개체를 속성과 메서드가 결합한 형태의 객체로 추상화하는 것이 객체 지향 설계(이 시스템이 어떤 구성요소로 이루어져 있는지 파악하기). 객체 모듈화를 통해 생산성 향상 프로그램 = 클래스들의 집합 프로그램 실행 = 서로 협력하는 객체들의 집합 * 절차 지향 프로그래밍 : 작업 순서를 표현하는 컴퓨터 명령 집합, 함수들의 집합으로 프로그램 작성 * UML (Unified Modeling Language) : 시스템 설계를 그림으로 표현. 개발자 사이 의사소통을 위한 도구 - OOP 특징 추상화(abstraction..
-
🎮 [JAVA 자바] #6 | 자바 예외처리, Try-catch-finally, 다중 catch, Checked / Unchecked 예외, throw, throwsCS/Java 2022. 4. 17. 02:40
🎮 예외처리 - 자바의 오류 1. 컴파일 오류 : 실행 전 문법적 오류 2. 런타임 오류 : - 예외(Exception) : 프로그램 실행 도중 오류가 발생했지만 동작을 계속 수행할 수 있는 오류. 동작 가능, 처리 가능 - 에러(Error) : 프로그램이 더 이상 동작할 수 없는 심각한 오류로 예측 불가능, 수습 불가능 (ex. VM고장, OutOfMemory, 스택이상) 3. 논리적 오류 : 디버거 통해서 해결 - 자바의 예외 처리 (Exception Handling) 프로그램 실행 도중 에러에 대해서는 프로그램에서 처리(핸들링)하지 않고 예외에 대해서만 처리(핸들링) 예외의 발생에 대비한 코드를 작성하는 것이 예외 처리로, 예외가 발생되었을 때 강제 종료되지 않고 정상 실행 되도록 처리함이 목적 *..
-
🎮 [JAVA 자바] #5 | 자바 배열, 다차원 배열, Arrays 클래스CS/Java 2022. 4. 17. 00:19
🎮 배열 - 배열 (array) 같은 타입의 데이터들이 순차적으로 저장 인덱스와 인덱스에 대응하는 데이터들로 이루어진 자료 구조 int[] score; // 또는 int score[]; score = new int[5]; String[] name; // 또는 String name[]; name = new String[5]; * int (배열 타입) [] (배열 선언) score (배열에 대한 레퍼런스 변수) = new (배열 생성) int (타입) [5] (원소 개수) - 배열의 초기화 생성된 배열에 처음으로 값을 저장하는 것. 직접 각 요소에 값을 저장하는 방식과 자동 저장하는 방법이 있다. // 직접 저장 int[] score = new int[3]; score[0] = 100; score[1] = ..
-
🎮 [JAVA 자바] #4 | 자바의 조건문과 반복문, 열거형 | enum, if-else, while, switchCS/Java 2022. 4. 16. 23:28
🎮 조건문 - if 문 C언어와 동일 if (조건식 1) { 실행 문장 1; // 조건식 1이 참인 경우 } else if (조건식 2) { 실행 문장 2; // 조건식 2가 참인 경우 } else if (조건식 m) { ............. } else { 실행 문장 n; // 앞의 모든 조건이 거짓인 경우 } 함수 a, b가 있을 때, if ( a() || b() )도 사용 가능 -> a()가 참이면 b() 실행X. 만약 a() && b()일 때, a()가 거짓이면 b()실행X - switch문 하나의 조건식에 처리해야 하는 경우의 수가 많을 때 유용 break 또는 switch문을 만나면 전체를 빠져나감. break문이 없으면 다음 case문으로 계속 실행 default 생략 가능 switch ..
-
🎮 [JAVA 자바] #3 | 자바의 연산자, 연산자 우선순위CS/Java 2022. 4. 16. 20:41
🎮 연산자 우선순위 - 연산자 우선순위 모호하게 해석간으한 수식에서 어느 연산을 먼저 계산할 것인가를 결정하는 규칙. 같은 우선순위의 연산자는 왼쪽에서 오른쪽으로 처리, (대입연산자, --, ++, 양수 음수 부호, !, 형변환)은 오른쪽에서 왼쪽으로 처리. 괄호는 최우선 순위 : 가장 안쪽의 괄호부터 처리 단항연산자 > 산술연산자 > 관계연산자 > 비트연산자 > 논리연산자 > 대입연산자 * 단항 연산자 : ++, --, +(양의 부호), -(음의 부호), ~, ! * 비트 연산자 : &(AND), ^(XOR), |(OR) - 그림으로 보기 더보기 - 1. 증감 연산자 전위 : b= ++a; -> a가 1 증가된 후에 값이 b에 들어간다. (증가 후의 값 반환) 후위 : b= a++; -> a의 값이..
-
🎮 [JAVA 자바] #2 | 자바의 기본타입, 식별자, 리터럴, 오버플로우, 형변환, Scanner, var, finalCS/Java 2022. 4. 16. 20:00
🎮 자바 프로그램의 기본 구조 package week2_3; import java.util.Scanner; public class Circle { final static double PI = 3.14; // 원주율을 상수로 선언 (final 사용) public static void main(String[] args) { System.out.print("radius:") // 단순 안내 메세지 Scanner scanner = new Scanner(System.in); // 레퍼런스 타입, 입력, System.in은 키보드 디바이스 int radius = scanner.nextInt(); // 기본타입 변수 int, 정수로 받기 double circleArea = radius*radius*PI; // 기본타..
-
🎮 [JAVA 자바] #1 | 자바 특징, WORA, Eclipse, package, static, extern, JDK, JRE, SE, 디버그CS/Java 2022. 4. 16. 11:27
🎮 자바 특징 - WORA(Wirte Once Run Anywhere) - 자바의 가장 큰 특징으로, 한 번 작성된 코드는 OS, H/W와 관계없이 모든 플랫폼에서 똑같이 실행될 수 있다. - WORA 가능하게 하는 자바 특징 - 바이트 코드(byte code) : 자바 소스를 컴파일한 목적 코드 (.class 파일) 컴파일러에 의해 변환되는 코드의 명령어 단위가 1byte이며, 운영체제에서 직접 실행되는 것이 아니라 JVM 상에서 실행된다. - JVM(Java Virtual Machine) : 자바 바이트 코드를 클래스 로더를 통해 읽어들여 자바 API와 함께 실행하는 자바 가상 기계. 자바 가상 기계가 설치된 모든 컴퓨터에서(어떤 플랫폼)에서도 동일한 실행 환경을 제공할 수 있다. - 프로그래밍을 위..