본문 바로가기

to Developer/JAVA4

Java 기초 Java 자바 기초에 대해 자주 보기 위해 정리! 접근 제한자 public : 접근에 제한이 없음 private : 자기 자신 클래스 내에서만 접근 가능 default : 동일한 패키지 내에서만 접근 가능 protected : 동일한 패키지 내에서만 접근 가능 + 상속을 이용한 접근 가능 String vs Char Char은 내용물이 1개인 문자로 제한되는 반면에 String은 문자열을 담을 수 있다. Char의 경우 변수 안에 직접적으로 문자를 가지고 있지만 String은 reference 타입으로 실질적인 문자열이 아니라 주소값을 가지고 있다. 이 때문에 비교 방식에 차이가 있다. Char의 경우 값이 같다면 ==(동일성) 비교를 사용할 수 있지만, String의 경우 내용이 같더라도 생성되는 주소가..
JVM JVM 자바 가상머신으로 자바 바이트 코드를 실행할 수 있는 주체! 컴파일러를 통해 바이트 코드로 변환된 파일을 JVM에 로딩하여 실행 JVM의 구조 Class Loader : JVM 내(Runtime Data Area)로 Class 파일을 로드하고 링크 Execution Engine : 메모리(Runtime Data Area)에 적재된 클래스들을 기계어로 변경해 실행 Garbage Collector : 힙 메모리에서 참조되지 않는 개체들 제거 Runtime Data Area : 자바 프로그램을 실행할 때, 데이터를 저장 JVM 실행 과정 JVM은 OS로부터 메모리(Runtime Data Area)를 할당 받음 컴파일러(javac)가 소스코드(.java)를 읽어 바이트 코드(.class)로 변환 Clas..
객체 지향 프로그래밍 객체 지향 프로그래밍 (OOP, Object-Oriented Programming) 객체 지향 프로그래밍이란 프로그램 구현에 필요한 객체를 파악하고 객체들 간의 상호작용을 통해 프로그램을 만드는 것 을 말한다. 객체 지향 프로그래밍 특징 캡슐화 정보 은닉 : 필요 없는 정보는 외부에서 접근하지 못하도록 제한 높은 응집도, 낮은 결합도로 유연함과 유지보수성 증가 추상화 사물들의 공통적인 특징을 파악해서 하나의 개념(집합)으로 다루는 것 목적과 관련이 없는 부분을 제거하여 필요한 부분만을 표현하기 위한 개념 상속 기존 상위클래스에 근거하여 새롭게 클래스와 행위를 정의할 수 있게 도와주는 개념 다형성 형태가 같은데 다른 기능을 하는 것을 의미 오버라이딩, 오버로딩 오버라이딩(Overriding) - 부모클래스..
Java의 특징 자바(Java)의 특징 객체 지향 언어 객체 지향 프로그래밍(OOP, Object-Oriented Programming)이란 프로그램을 개발하는 기법으로 부품에 해당하는 객체들을 먼저 만들고, 이것들을 하나씩 조립 및 연결하여 전체 프로그램을 완성하는 것. 객체를 만들기 위해서는 설계도인 클래스를 작성하고, 객체와 객체를 연결하여 목적에 맞는 프로그램을 만들어 낸다. 객체지향 언어의 특징인 캡슐화, 상속성, 다형성을 완벽하게 지원한다. 이식성이 높다 서로 다른 실행환경을 가진 시스템 간에 프로그램을 옮겨 실행할 수 있는 것을 말한다. 자바는 자바 실행환경(JRE)이 설치되어 있는 모든 운영체제에서 실행이 가능하다. 인터프리터 언어 컴파일 언어인 동시에 인터프리터(Interpreter) 언어이다. 텍스트 ..