-
(6주차 38일) 스레드수업 내용 정리 2024. 6. 19. 10:16
Java스레드(Thread)> 스레드프로세스운영체제에서 실행 중인 하나의 프로그램(애플리케이션)이다.프로그램이 실행될 때 마다 개별적으로 생성된다.하나의 프로그램(애플리케이션)은 다중 프로세스를 만들기도 한다.스레드프로세스 내에서 할당된 자원을 이용해 실제 작업을 수행하는 작업 단위이다.모든 프로세스는 하나 이상의 스레드를 가지며 각각 독립적인 작업 단위를 가진다.하나의 스레드는 하나의 코드 실행 흐름이기 때문에 한 프로세스 내에 여러 개의 스레드가 존재한다면 여러 개의 실행 흐름이 생긴다는 의미이다.메인 스레드모든 자바 프로그램(애플리케이션)은 메인 스레드가 main()메소드를 실행하면서 시작된다.메인 스레드는 main() 메소드의 첫 코드부터 아래로 순차적으로 실행되고, 코드를 모두 실행하거나 ret..
-
[CodeTree/Python] 화면에 출력Solve 2024. 6. 17. 21:50
문제더보기화면에 출력화면에 문자가 하나 입력되어있습니다. 다음의 연산을 통해 문자를 s개로 만들어 보려고 합니다.화면에 있는 모든 문자를 복사해서 클립보드에 저장합니다.클립보드에 있는 모든 문자를 화면에 붙여넣기합니다.화면에 있는 문자중 하나를 삭제합니다.클립보드의 내용은 항상 덮어씌어 지며, 클립보드의 문자는 삭제할 수 없고, 클립보드의 문자를 화면에 붙여넣으면 문자가 추가가됩니다.클립보드가 비어있으면 2번연산을 실행할 수 없으며, 일부만 복사할 수 없습니다.이러한 연산을 통해 문자를 s개 만드는데 필요한 최소 연산 횟수를 구하는 프로그램을 작성해보세요. 입력 형식첫 번째 줄에 s가 주어집니다.2 ≤ s ≤ 1,000출력 형식문자열을 s개 만들기 위해 필요한 최소 연산 횟수를 출력합니다. 코드트리 | ..
-
[CodeTree/Python] 확산4Solve 2024. 6. 17. 21:14
문제더보기확산 4크기가 n x m 인 표 위에 채워져 있는 칸은 'O'로 빈칸은 ' . ' 으로 주어져 있습니다.'O' 는 다음과 같은 속성을 가집니다.3초가 지나게 되면 자신을 포함한 상하좌우 5개의 칸을 빈칸으로 만듭니다.또, 'O'는 다음과 같은 규칙으로 생기게 됩니다.초기 1초를 제외하고, 모든 빈칸에 'O'가 생깁니다.s초 후에 표의 상태를 구하는 프로그램을 작성해보세요. 입력 형식첫 번째 줄에 n, m, s가 주어집니다.두 번째 줄부터 n개의 줄에 걸쳐 ' . ' 또는 'O' 이 m개씩 공백없이 주어집니다.1 ≤ n, m, s ≤ 200출력 형식s초 후의 표의 상태를 n개의 줄에 걸쳐 출력합니다. 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보..
-
(6주차 37일) IO 스트림수업 내용 정리 2024. 6. 17. 17:34
JavaIO(Input/Output)> 입출력(IO)컴퓨터 내부 또는 외부 장치와 프로그램 간의 데이터를 주고받는 것입력: 키보드, 파일 또는 네트워크로부터 데이터 입력출력: 모니터, 파일 또는 네트워크로 출력> 스트림자바에서 스트림은 입출력 장치에 데이터를 읽고 쓰기 위해서 제공하는 클래스InputStream바이트 기반 입력 스트림의 최상위 클래스로, 추상 클래스이다.그림, 멀티미디어, 문자 등 모든 데이터를 입력받을 수 있다.read() 추상 메소드: 외부 장치로부터 바이트 단위의 데이터를 읽어올 수 있다.close() 추상 메소드: 사용한 시스템 자원 반납 후 입력 스트림을 닫는다. 2. OutputStream바이트 기반 출력 스트림의 최상위 클래스로 추상 클래스이다.그림, 멀티미디어..
-
[한화시스템 BEYOND SW캠프 8기] 5주차 회고한화시스템 beyond SW 캠프 2024. 6. 17. 11:37
헉스바뤼 벌써 5주차 마무리🤓 매번 시작마다 시간 얘기 그만 하고 싶은데 진짜 날이 갈수록 시간이 빠르게 지나는 것 같다. 잘 모르는 내용에 접어들기 시작해서 그런지 친구들이랑 점점 더 친해지는 기분이 들어서 그런지 쉬는시간도 훅훅 가고 수업시간도 훅훅 지나가버린다. 특히 점심시간은 첫날부터 지금까지 겁 나 빨 리 감 ... 서론은 이만하면 됐고 이번 주는 진짜로 중요하기도 하고 헷갈리는 내용을 많이 배웠다. 특히 기본적인 내용이지만 개념이 제대로 잡히지가 않아서 나를 어리바리 까게 만들었던 객체지향, 상속, 다형성, 추상 클래스 너!!!!!🫵🫵🫵 그래도 다행히 인강으로 한 번 1도 모르고 넘어갔다가 한 번 더 들으니까 좀 이해가 되는 것 같기도 하고? 프로젝트 해보면 이제 아 아직 ..
-
(5주차 33일) 인터페이스, 예외 처리, 기본 API수업 내용 정리 2024. 6. 13. 17:28
Java인터페이스(Interface)> 인터페이스자바에서 클래스들이 구현해야 하는 동작을 지정하는 역할실행 코드와 객체가 통신하는 접점으로 실행 코드가 인터페이스의 메소드를 호출하면 인터페이스는 객체의 메소드를 호출> 인터페이스 구현선언: [접근 제한자] interface 인터페이스명 { ... }class 키워드 대신 interface 키워드 사용인터페이스는 선언된 필드는 모두 public static final의 특성을 가진다.인터페이스에 선언된 메소드는 모두 public abstract의 특성을 가진다.구현: 클래스 선언부에 implements 키워드를 추가하고 인터페이스명을 명시한다.인터페이스를 구현하는 클래스는 인터페이스에 정의된 추상 메소드를 반드시 오버라이딩 해야 한다.상속과 다르게 인터페이..
-
(5주차 32일) 상속, 다형성, 추상 클래스수업 내용 정리 2024. 6. 12. 17:42
Java상속(Inheritance)> 상속객체 지향 프로그래밍에서 상속은 부모 클래스의 멤버를 자식 클래스에게 물려주는 것부모 클래스: 부모에 해당하는 클래스. 상위, 슈퍼 클래스자식 클래스: 자식에 해당하는 클래스. 하위, 서브 클래스상속을 통해서 다른 클래스가 가지고 있는 멤버를 직접 만들지 않고 상속을 받음으로써 자신의 멤버처럼 사용할 수 있다.선언: [접근 제한자] class 자식클래스명 extends 부모클래스명 { ... }자바는 다중 상속을 지원하지 않는다.모든 클래스는 Object 클래스의 후손이다.부모 클래스에서 private 접근 제한을 갖는 필드와 메소드는 상속에서 제외된다.> 자식 객체 생성생성자는 상속되지 않는다.자식 클래스의 객체를 생성하면 -> 부모 클래스의 생성자가 먼저 호출..
-
(5주차 31일) 접근 제한자, 생성자, 메소드, 정적 멤버, final수업 내용 정리 2024. 6. 11. 17:15
Java접근 제한자자바에서 제공하는 접근 제한자는 public, protect, default, private가 있다. public: 외부에서 자유롭게 접근 가능protected: 같은 패키지 또는 자식 클래스에서만 접근 가능default: 같은 패키지에 소속된 클래스에서만 접근 가능private: 외부에서의 접근을 제한하고 선언된 클래스에서만 접근 가능예시package com.beyond.field;import com.beyond.field.practice.User;public class FieldApplication { public static void main(String[] args) { User user = new User(); /** * 접근 제한자..
-
[CodeTree/Python] n x m 표 이동 5Solve 2024. 6. 11. 09:51
문제더보기n x m 표 이동 5n x m 표에서 (1,1)부터 (n,m)까지 이동하려 할 때 최소한으로 이동할 때 거쳐간 칸의 수를 구하는 프로그램을 작성해보세요.단, 각 칸에는 0또는 1의 값이 주어져 있고, 1의 값이 주어진 칸 위로만 움질일 수 있습니다. 입력 형식첫 번째 줄에는 n과 m이 주어집니다.두 번째 줄부터 n개의 줄에 걸쳐 0또는 1이 m개씩 공백을 두고 주어집니다. (1, 1)과 (n, m)은 반드시 1로 주어집니다.2 ≤ n, m ≤ 100출력 형식(1, 1)에서 (n, m)까지 최소한의 횟수로 이동할 때 그 횟수를 출력합니다. 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로..
-
(5주차 30일) 배열, 클래스, 필드수업 내용 정리 2024. 6. 10. 17:46
Java> 배열(Array)배열은 같은 타입의 데이터를 연속된 공간에 나열시키고, 각 데이터에 인덱스(index)를 부여해 데이터를 읽거나, 데이터를 저장하는 방법을 제공한다.배열 변수의 선언: 변수와 마찬가지로 배열을 사용하기 위해서는 배열 변수를 선언해야 한다.배열 생성 및 초기화- new 연산자로 배열 생성 및 초기화- 값 목록으로 배열 생성 및 초기화배열의 저장 구조배열 변수는 참조 변수이다. 배열 변수는 Stack 영역에 생성된다.new 자료형[배열 크기] 구문을 실행하면 Heap 영역에 배열을 생성하고, 배열의 시작 주소를 반환한다.new 자료형[] {값, 값, 값, ... } 또는 {값, 값, 값, ... } 구문을 실행하면 주어진 값들을 요소로 가지는 배열을 Heap 영역에 생성하고, 배열..