🍏 개발일기

이터레이터 | 스레드

보배 진 2025. 10. 23. 12:26

 

 

[ 이터레이터(복사체) ]

List의 하위 리스트 중 하나인 ArrayList를 사용


값을 출력하는 방법 4가지

 

 

 

4번의 경우

hasNext()를 사용해 복사체에 내다음이 있니?를 물어본다 

 

itr(=시작점)이 다음을 가지고 있니?

T : 하나 출력 & 시작점 한 칸 이동

F : while문 끝

 

즉, 다음이 없을 때까지 하나씩 출력

 

 

 

 

 

 

 

 

 


 

[ 스레드 ] 

 

작업관리자에서 현재 동작 중인 프로그램의 CPU, 메모리 등등을 확인 할 수 있다

 

 

스레드가 '일하는 방식'

컴퓨터를 켜서 이클립스를 누르고 > 카톡을 누르고 > 브라우저를 누르면 

이 순서대로 동작할 것 같지만

 

아마도 실제로는 브라우저 > 카톡 > 이클립스  순서로 뜨게 될 것이다

스레드는 여러개 있다

프로그램 하나하나에 새로운 스레드가 붙게 되는데

가벼운 앱은 비교적 빨리 뜨게 되는 것이다

 

 

 

 

 

Thread가 갖고 있는 메서드 중 run()을 오버라이딩해보자

 

 

 

 

1. 클래스 상속

 

 

 

 

 

 

 

 

2. 인터페이스

ex) MyThread는 워치, Runnable이 폰이라고 생각하면

메소드를 강제했기 때문에 그 폰의 기능을 사용할 수 있는것 즉, 스레드는 아님

 

21번처럼 mt를 스레드에 넣어 사용한다

 

 

 

 

 


 

2개의 프로그램을 실행해보자

println이 빨리 되는 쪽부터 출력을 한다

Thread는 동시에 작동을 하고 있다.

 

interface가 나중에 실행을 했는데 먼저 뜨는 것을 보면

자원을 받아 실행을 하는 컴퓨터에도 영향이 있다는 것을 알 수 있다

 

 

 


 

 

 

[ 파일 입출력]

 

 

자바에서 강제로 try ~ catch 문을 사용해라. 하고 있다

 

 

 


 

객체는 초기화를 null로 한다 / initialized = > 초기화하면 보통 해결이 된다
fr = null 초기화
파일이 읽다가 중간에 사라질 수 있으므로 try ~ catch 문 강제로 사용