본문 바로가기

IT/Java64

JVM 메모리 구조 Method Area : 클래스에 대한 정보를 저장 heap : 인스턴스가 생성되는 공간 Call stack : 메서드의 작업에 필요한 메모리 공간을 제공조 기본형 매개변수 : 변수의 값을 읽기만 할 수 있다. (read only) 참조형 매개변수 : 변수의 값을 읽고 변경 할 수 있다.(read & write) ※반환타입이 '참조형' 이란ㄴ 것은 메서드가 '객체의 주소'를 반환한다는 것을 의미 재귀 호출 : 메서드 내부에서 메서드 자신을 다시 호출하는 것, 조건이 없다면 무한 반복에 빠지게 되므로 조건 설정이 필수 적이다. 인스턴스 메서드 : 메서드이 작업을 수행하는데 인스턴스 변수를 필요로 하는 메서드 클래스 메서드(static 메서드) : 인스턴스와 관계없는(인스턴스 변수나 인스턴스 메서드를 사용하.. 2019. 6. 23.
OOP 객체 지향 언어를 사용하는 이유 캡슐 상속 추상화 다형성 클래스 : 객체를 정의해놓은것 객체를 생성하는데 사용 변수 + 메서드 사용자 정의 타입 객체 : 실제로 존재하는 것 용도는 객체가 가지고 있는 기능과 속성에 따라 다르다. 인스턴스 : 어떠한 클래스로 부터 만들어진 객체 클래스로 부터 객체를 만드는 과정을 클래스의 인스턴스화 객체의 구성 요소 속성 : 멤버 변수, 특성, 필드, 상태 ( ex. 크기, 길이, 높이, 색상, 볼륨 ..) 기능 : 메서드, 함수, 행위 (ex. 켜기, 끄기, 볼륨 높이기, 볼륨 낮추기...) 인스턴스의 생성과 사용 클래스명 변수명; //클래스의 객체를 참조하기 위한 변수 선언 변수명 = new 클래스명(); //클래스의 객체를 생성 후, 객체의 주소를 참조변수에 저장 T.. 2019. 6. 22.
다차원 배열 2차원 배열의 선언 타입[][] 변수이름; 타입 변수이름 [][]; 타입[] 변수이름[]; 2차원 배열의 인덱스 : 행과 열로 구성되어있다. 그렇기에 0~행의 길이 -1, 열의 경우 0~ 열의 길이 -1 의 범위를 갖으며, 접근 방법은 '배열이름[행index][열index]'이다. 2차원 배열의 초기화 : 괄호를 한번 더 써서 행별로 구분을 준다. int [][] arr = { {1,2,3}, {4,5,6} };//new int[][]생략 가변 배열 : 2차원 이상의 다차원 배열을 생성할 경우 전체 배열 차수 중 마지막 차수의 길이를 지정하지 않고, 각기 다른 길이의 배열을 생성함으로써 고정된 형태가 아닌 유동적인 가변 배열을 구성할 수 있다. 2019. 6. 18.
String 배열 String 배열 선언 String [] name = new String[3];//3개의 문자열을 담을 수 있는 배열을 생성한다. ※ 각 요소는 String의 초기값 null을 갖는다. String 배열의 초기화 String[] name = new String[]{"Kim", "Park", "Yi"}; String[] name = {"Kim", "Park", "Yi"};//new String을 생략 하는 것이 가능하다 배열에 실제 객체가 아닌 주소값이 저장되어있다. 이처럼 기본형 배열이 아닌, 참조형 배열의 경우 배열에 저장되는 것은 객체의 주소이다. 이러한 참조형 배열을 객체 배열이라고도 한다. ※ 참조형 변수는 객체가 메모리에 저장된 주소인 4byte의 정수 값 또는 null이 저장된다. char배열.. 2019. 6. 18.