본문 바로가기

전체 글130

객체지향 프로그래밍 정리 3. static 메소드 (클래스 메소드) 1. 개요 static 메소드는 static 변수를 사용하는 메소드다. 특징으로는 인스턴스의 생성과 무관하게 클래스 이름으로 호출할 수 있다. 인스턴스 생성 전에 호출할 수 없으므로 static 메소드 내부에서는 인스턴스 변수를 사용할 수 없다. ( 인스턴스 생성 전부터 사용할 수 있어야 하는데 인스턴스 변수를 사용하면 없는 변수를 사용하려는 경우가 생기기에 막아놓은 것이다.) 2. 사용 예 public class Employee { private static int serialNumber = 1000; private int Id; private String name; private String department; public Employee() { Id = serialNumber++; } public.. 2022. 3. 31.
객체지향 프로그래밍 정리 2. static 변수 1. 개요 static : 데이터 영역 메모리에서 여러 인스턴스들이 공유하는 변수 사용 예로는 학생마다 새로운 학번 생성 카드 회사에서 카드를 새로 발급할 때마다 새로운 카드 번호를 부여 회사에 사원이 입사할 때마다 새로운 사번 부여 등이 있다. 2. 활용 2-1. static 개념 설명 static int serialNumber; 인스턴스가 생성될 때 만들어지는 변수가 아닌, 처음 프로그램이 메모리에 로딩될 때 메모리를 할당 하드디스크에 프로그램이 있고, 그 프로그램을 구동하면 프로그램이 메모리에 올라가게 된다. 이 상태를 프로세스라 하는데 2가지 영역을 가지게 된다. code, data 영역이 있는데 data영역엔 static (상수), literal이 올라가고, code : instruction s.. 2022. 3. 31.
객체지향 프로그래밍 정리 1. 인스턴스, 힙 메모리, this 1. 인스턴스와 힙 메모리 인스턴스란 클래스를 이용해 생성한 객체를 말한다. 간단하게 설명하자면 틀로 만드는 음식에서 나온 음식이라 보면 된다. 붕어빵 틀에 넣고 만들면 모두 붕어빵의 형태를 하고 있지만, 내용물은 다른 걸 넣을 수도 있다. 팥, 슈크림, 초코, 민트초코 등 각기 다른 걸 가질 수 있고, 그 각각의 객체가 인스턴스다. 참고로 그 틀이 되는 것은 클래스라고 한다. 그리고 힙 메모리란 객체가 생성되는 메모리 공간을 뜻한다. 예를 들자면 Student라는 클래스를 만들고, new 키워드로 2개의 학생 인스턴스 객체를 만들면 메모리 공간에서는 아래의 그림과 같이 생성된다. 스택 (Stack) 힙 (Heap) 학생1 (객체의 메모리 주소가 담긴 변수) 학생1 인스턴스 (실제 객체, 각기 다른 내용.. 2022. 3. 29.
스프링 2-9. Filter 보호되어 있는 글 입니다. 2022. 3. 19.