Java 특강 (4) 썸네일형 리스트형 Java 코드가 실행되는 과정 과정 Java로 작성한 소스코드는 자바바이트코드로 변환되어 JVM에게 전달됩니다. JVM은 설치된 OS에 맞춰서 기계어로 변환시켜 줍니다. JRE는 자바 실행 환경의 약자입니다. JVM과 표준 라이브러리가 포함됩니다. JDK는 자바 개발 키트의 약자입니다. 컴파일러, 디버거, JAR, 프로파일러가 포함되어 있습니다. 이 모든 요소들을 활용하여 자바 프로그램을 개발하고 테스트하고 실행합니다. 그래서 자바로 개발할 때 JDK를 설치해야하는 이유입니다. 컴파일러 언어 vs 인터프리터 언어의 차이 컴파일 즉 번역은, 프로그래밍 언어로 코드를 짜고 나서, 그걸 실행하기 전에 , 컴퓨터가 읽을 수 있는 언어로 번역 작업을 하는 것을 말합니다. 실행할 때는 이 번역본을 컴퓨터에게 건내는 거죠 번역 과정이 번거.. 프로세스와 스레드의 차이점 프로세스와 스레드프로그램이 돌아가고 있는 상태를 프로세스라고 합니다.예를 들어 바탕화면에 크롬을 선택하면 화면이 나옵니다. 화면이 나오는 상태를 프로세스라고 합니다. 크롬은 일을 할 때 게임을 다운받는 동시에 다른 페이지를 돌아다닐 수 있어야 합니다. 한 프로세스 안에도 여러 갈래의 작업들이 동시에 진행될 필요가 있습니다. 이 갈래를 스레드라고 합니다. Context Switching 프로세스 1을 수행하다가 프로세스 2로 이동한다. 이를 Context Swithching이라고 합니다. 이동할 때 프로세스 컨트롤 블록에 프로세스 상태를 저장합니다. 문맥을 이어가기 위한 생태를 저장합니다. 연산할 때 상태가 변하는데 그 상태의 변화는 레지스터에 저장됩니다. 공유자원과 동기화여러 프로세스, 여러 스레드가 동.. 객체 지향이란 무엇인가요? 정의객체지향 프로그래밍은 프로그램을 객체들의 상호작용으로 구성하는 방식입니다. 각 객체는 상태를 가지고 있고, 그 상태를 변경하거나 활용할 수 있는 행동(메소드)을 합니다. 객체지향 프로그래밍은 이러한 객체들을 중심으로 프로그램을 구조화하여, 복잡한 시스템을 더 쉽게 관리하고 유지 보수할 수 있게 해줍니다. 객체지향 프로그래밍의 4가지 특징캡슐화객체의 상태와 행동을 묶어, 외부에서 객체의 내부 상태를 직접적으로 접근하지 못하도록 합니다.각 클래스는 자신의 메서드와 데이터에만 집중하고, 외부에는 필요한 메서드만 공개합니다. 외부 객체들은 이 공개된 메서드를 통해서만 클래스와 상호작용할 수 있습니다. 이를 통해 코드의 복잡성을 줄이고, 수정 및 유지보수 시 유연성을 확보할 수 있습니다. 상속하나의 클래스가 .. 오버라이딩이 내부에서 구현되는 법 class Parent{ void sayHi(){ System.out.println("안녕?"); } void sayBye(){ System.out.println("안녕!"); }}class Child extends Parent{ void sayHi(){ System.out.println("HI?"); } void play(){ System.out.println("열심히논다"); }}class Child2 extends Parent{}public class Test{ public static void main(String[] args){ Parent p = new Child(); p.sayHi(); // HI? }} 오.. 이전 1 다음