목록Java (2)
Code in Life
객체지향이란 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들고 그 객체들간의 유기적인 상호작용을 통해 로직을 구성하는 프로그래밍 방법 장점 코드 재사용성이 높다. 유지보수가 쉽다 대형 프로젝트에 적합함 → why? 클래스 단위로 모듈화 개발 업무분담이 가능 단점 설계 시 많은 노력과 시간이 필요함 특징(=Java의 특징 4가지) 추상화 : 불필요한 정보는 숨기고 필요한 정보만을 표현함으로써 공통된 속성이나 기능을 묶어 이름을 붙일 수 있습니다. 캡슐화 : 관련된 기능(메소드)과 속성(변수)을 한 곳에 모으고 분류하기 때문에 재활용이 원활하다. 또한 정보 은닉이 가능합니다. : 응집도를 높이고 결합도를 낮춘다. 상속 : 부모 클래스의 속성과 기능을 이어 받아 사용할 수 있고 필요에..
구조 스택기반의 가상머신 (ARM 아키텍처같은 하드웨어는 레지스터 기반으로 동작) 역할 Java와 OS사이에서 중개자역할을 수행하며 Java가 OS에 구애받지 않고 재사용 가능하도록 해줌 메모리관리, Garbage Collection을 수행한다. 알아야하는 이유 동일한 프로그램이라도 메모리 관리에 따라 성능이 좌우된다. 메모리가 관리되지 않는다면 속도저하 현상이나 튕김 현상이 발생할 수 있다. Java Application 실행과정 프로그램이 실행되면 JVM은 OS로부터 프로그램이 필요한 만큼 메모리를 할당받는다. 이때, 용도에 따라 여러 영역으로 나누어 관리한다. 자바 컴파일러(javac)가 자바 소스코드(.java)를 읽어들여 자바 바이트코드(.class)로 변환시킨다. Class Loader를 통해..