[Java] 메모리 구조 & static
·
Language/☕ Java
Java 메모리 구조 메서드 영역 : 클래스 정보 보관스택 영역 : 실제 프로그램이 실행되는 영역. 메서드를 실행할 때마다 하나씩 쌓임.힙 영역 : 객체가 생석되는 영역 -> new 명령어를 사용하여 이 영역 사용  ex) A a = new A();메서드 영역 : 이 영역은 프로그램을 실행하는 데 필요한 공통 데이터를 관리. 이 영역은 프로그램의 모든 영역에서 공역- 클래스 정보 : 클래스의 실행 코드, 리드, 메서드와 생성자 코드 등 모든 실행 코드 존재- static 영역 : static 변수들을 보관.스택 영역 : 자바 실행 시 , 하나의 실행 스택 생성. 각 스택 프레임은 지역 변수, 중간 연산 결과, 메서드 호출 정보 등을 포함.힙 영역 : 객체와 배열이 생성되는 영역이다. 가비지 컬렉션(GC)..
[Java] 접근 제어자
·
Language/☕ Java
접근 제어자를 쓰는 이유는 원로적으로 '캡슐화'라고 생각하였다. 캡슐화에 대해 정리해보자.캡슐화캡슐화(Encapsulation)는 객체 지향 프로그래밍의 중요한 개념 중 하나다.캡슐화는 데이터와 해당 데이터를 처리하는 메서드를 하나로 묶어서 외부에서의 접근을 제한하는 것을 말한다.캡슐화를 통해 데이터의 직접적인 변경을 방지하거나 제한할 수 있다. 캡슐화는 쉽게 이야기해서 속성과 기능을 하나로 묶고, 외부에 꼭 필요한 기능만 노출하고 나머지는 모두 내부로 숨기는것이다.이전에 객체 지향 프로그래밍을 설명하면서 캡슐화에 대해 알아보았다. 이때는 데이터와 데이터를 처리하는 메서드를 하나로 모으는 것에 초점을 맞추었다.여기서 한발짝 더 나아가 캡슐화를 안전하게 완성할 수 있게 해주는 장치가 바로 접근 제어자다.그..
변수란? (전역 변수,매개변수, 인스턴스 변수, 클래스 변수)
·
Language/☕ Java
-프로그래밍을 하다 보면, 다양한 변수가 존재한다. 전역 변수, 매개 변수, 인스턴스 변수, 클래스 변수, 멤버 변수 등등 이 변수들이 어떤 것을 정확하게 지칭하는 것인지 혼동이 온다. 혼동이 온다는 건 내가 완벽히 각 변수의 개념을 이해하지 못하고 있다는 반증이라 생각하여, 다시  '변수'라는 것에 대해 되짚어 보고 가려한다.1. 데이터 타입 (메모리에 저장되는 방식) 에 따른 분류     1) 기본 자료형 (기본형 변수 Primitive variable) 프로그래밍 언어에서 미리 만들어 둔 타입(가장 많이 쓰이는 데이터 타입을 쉽게 사용하기 위함)변수에 할당된 메모리에 직접 값이 저장된다.비교적 단순 데이터예) int, double, boolean, char 등    2) 객체 자료형 (참조 변수 )..
Sooya186
'Language' 카테고리의 글 목록 (4 Page)