Language/Java
-
Java - 인터페이스Language/Java 2021. 12. 8. 13:33
인터페이스란? 인터페이스의 개념 - 인터페이스란, 자바 프로그래밍 언어에서 클래스들이 구현해야 하는 동작을 지정하는 데 사용되는 추상 자료형이다. - 즉, 동일한 목적 하에 동일한 기능을 수행하게끔 강제하는 역할을 하는 것이다. - 자바의 다형성을 극대화하여 개발코드 수정을 줄이고 프로그램 유지보수성을 높이기 위해 인터페이스를 사용한다. 인터페이스의 문법 인터페이스의 구성요소 - 인터페이스는 interface 키워드를 통해 선언할 수 있으며, 일반 클래스에서 implements 키워드를 통해 인터페이스를 구현할 수 있다. - 또한, Java 8 이전까지는 상수, 추상 메서드만 선언이 가능했지만, Java 8부터는 디폴트 메서드, 정적 메서드가 추가되었다. public interface 인터페이스명 { /..
-
Java - 객체지향언어Language/Java 2021. 12. 7. 14:46
객체지향언어의 정의 객체(Object)란? - 객체란 세상에 존재하는 모든 것을 의미한다. 즉, 주변에 있는 사물이나 생명체 같은 모든 것들을 말한다. - 프로그래밍에서의 객체는 데이터의 분산을 막기 위해 데이터와 기능을 하나로 묶은 그룹이라고 할 수 있다. 객체지향언어(Object Oriented Langauge)란? - 컴퓨터 프로그래밍의 한 가지 기법으로, 객체를 만들고 객체를 사용하는 프로그래밍 방법을 말한다. - 프로그램을 그저 데이터와 처리방법으로 나누는 게 아닌, 상태와 행위를 가진 객체들을 만들고, 이러한 객체들을 레고 블록처럼 서로 상호작용 하도록 조립해서 하나의 프로그램을 만드는 것을 의미한다. 객체지향언어의 특징 캡슐화(Encapsulation) public class Person {..
-
Java - 가비지 컬렉션(Garbage Collection)Language/Java 2021. 11. 15. 16:34
Garbage Collection Garbage Collection의 개념 Garbage Collection은 메모리 관리 기법 중 하나로, 동적으로 할당했던 메모리 영역 중 필요 없게 된 영역을 해제하는 기능이다. 여기서 동적으로 할당했던 메모리 영역은 프로그램 런타임에서 사용되는 Heap 영역을 의미하며, 필요 없게 된 영역은 어떠한 변수도 가리키지 않게 된 영역을 의미한다. Person person = new Person(); person.setName("홍길동"); person = null; person = new Person(); person.setName("이순신"); person 변수는 기존의 "홍길동" 이름이 붙은 Person 객체가 존재하는 메모리 영역을 가리키고 있었으나, 나중에 "이순..
-
Java - 자바 가상 머신(Java Virtual Machine)Language/Java 2021. 11. 9. 22:39
자바 가상 머신 자바 가상 머신이란? - 개발자들이 말하는 JVM은 보통 어떤 기기상에서 실행되고 있는 프로세스, 특히 Java 앱에 대한 리소스를 대표하고 통제하는 서버를 지칭한다. - 시스템 메모리를 관리하면서, Java 기반 앱을 위해 이식 가능한 환경을 제공해 준다. - Java와 운영체제 사이에서 중개자 역할을 수행하여 운영체제에 구애받지 않고 재사용을 가능하게 해 준다. 자바 가상 머신의 기능 - Java 프로그램이 어느 기기나 운영체제 상에서도 실행될 수 있도록 한다. - 프로그램 메모리를 관리하고 최적화한다. JVM에서의 메모리 관리 실행 과정 1. 프로그램이 실행되면, JVM은 OS로부터 프로그램이 필요로 하는 메모리를 할당받고, 할당받은 메모리를 용도에 따라 여러 영역으로 나누어 관리한..
-
Java - 컴파일 과정Language/Java 2021. 10. 29. 21:09
개요 Java란? - 프로그래밍 언어 - 컴퓨터 프로그램(애플리케이션)을 만드는 데 사용 - 실행환경(JRE) + 실행 도구(JDK) + 라이브러리(API)로 구성 - 쉽고 빠르게 애플리케이션 개발 가능 ※ 실행환경(JRE) : 클래스 라이브러리 등 특정 Java 프로그램이 실행할 수 있는 환경을 제공 ※ 실행 도구(JDK) : Java를 사용하기 위해 필요한 모든 기능을 갖춘 자바용 SDK ※ 라이브러리(API) : 프로그램을 개발하는데 필요한 기능들을 미리 만들어 놓은 것 Java의 탄생 배경 - Java는 썬 마이크로시스템즈의 제임스 고슬링이라는 사람과 다른 연구원들이 개발한 프로그래밍 언어로써, 1991년 그린 프로젝트라는 이름으로 시작해 1995년에 발표가 되었다. - 제임스 고슬링은 가전제품 ..