객체 배열
개발/Java
/ 2021. 4. 23.
기본 자료형 배열은 선언과 동시에 배열의 크기만큼 메모리가 할당 되지만, 객체 배열의 경우엔 요소가 되는 객체의 주소가 들어갈(4바이트, 8바이트) null 상태로 메모리만 할당되고 각 요소는 객체를 생성하여 저장해야 한다. 책으로 보는 객체 배열 예제 책의 제목과 저자를 변수로 갖는 Book class를 만들어준다. public class Book { private String title; private String author; public Book() { } public Book(String title, String author) { this.title = title; this.author = author; } public String getTitle() { return title; } public..
배열(array)
개발/Java
/ 2021. 4. 23.
배열이란? · 동일한 자료형의 순차적 자료 구조 · 인덱스 연산자 [ ] 를 이용하여 빠를 참조 가능 → (배열에서 인덱스 연산자를 쓸 때, 위치는 0부터 시작) 배열의 맨끝 위치는 n-1에 해당 → 배열의 크기는 10이라면 위치는 0~9까지 · 물리적 위치와 논리적 위치가 동일 · 배열의 순서는 0부터 시작 ·자바에서는 객체 배열을 구현한 ArrayList를 많이 활용 배열 선언과 초기화 배열 선언하기 int[ ] arr1 = new int[10]; int arr2[ ] = new int[10]; 배열 초기화하기 배열은 선언과 동시에 자료형에 따라 초기화 됨 (정수는 0, 실수는 0.0, 객체는 null) 필요에 따라 초기값을 지정할 수 있음 ① int[ ] numbers = new int[ ] (10..
동적 웹 프로그래밍
개발/Programming
/ 2021. 4. 22.
정적(Static) 프로그래밍 · 웹 서버(Apache)에 미리 보여줄 HTML, CSS, 이미지, JavaScript 파일을 저장해 놓고 브라우저에서 요청 할 경우 그대로 전달하는 방식 · 사용자는 페이지가 변경되지 않는 한 고정된 웹 페이지를 보게함 · 주로 화면의 디자인을 구성하거나 클라이언트의 이벤트르 처리함 -> 환율 정보나 주가 정보 등 실시간 정보를 표시하는 상황엔 적합하지 않는 방식 정적 웹 프로그래밍의 문제점 · 실시간으로 변하는 정보는 관리자가 수작업으로 HTML 코드를 주기적으로 업데이트 해야함. 사용자에게 디자인 같은 고정된 정보만 제공 정보 수정 시 관리자가 직접 HTML 소스를 수정하여 사용자에게 정보를 제공 실시간 정보를 제공받기를 바라는 사용자들에게는 적합하지 않는 방식 동적..
static 응용 - 싱글톤 패턴(singleton pattern)
개발/Java
/ 2021. 4. 22.
디자인 패턴 : 더 효율적이고 유지보수가 쉽게 객체지향으로 프로그래밍해서 23가지 패턴으로 정리한 것 그중 한 가지가 싱글톤 패턴이다. 싱글톤 패턴이란? 프로그램에서 인스턴스가 단 한 개만 생성되어야 하는 경우 사용하는 디자인 패턴 (예를 들면 회사(?)) static 변수, 메서드를 활용하여 구현 할 수 있음. ex. 싱글톤 패턴으로 회사 객체 구현하기 public class Company { private static Company instance = new Company(); //유일한 객체 private Company() { } //instance 생성없이 메서드를 호출할 것이기 때문에 static으로 적용 public static Company getInstance() { if(instance ..
변수의 유효 범위와 메모리
개발/Java
/ 2021. 4. 22.
· 변수의 유효 범위(scope)와 생성과 소멸(life cycle)은 각 변수의 종류마다 다름. · 지역 변수, 멤버 변수, 클래스 변수 => 다른 유효범위, life cycle, 사용하는 메모리가 다름. static 변수는 프로그램이 메모리에 있는 동안 계속 그 영역을 차지하므로 너무 큰 메모리를 할당하는 것은 좋지 않음 클래스 내부의 여러 메서드에서 사용하는 변수는 멤버 변수로 선언하는 것이 좋음 멤버 변수가 너무 많으면 인스턴스 생성 시 쓸데없는 메모리가 할당됨 상황에 적절하게 변수를 사용해야 함
Static 변수
개발/Java
/ 2021. 4. 22.
Static 변수 여러 인스턴스에서 공통으로 사용하는 변수 선언 · 여러 인스턴스가 공유하는 기준 값 · 고유 번호 (학번, 카드 번호, 사번, 자동차 시리얼 번호 등) static 변수 선언과 사용 ex_ static int serialNum; · 인스턴스가 생성될 때 만들어지는 변수가 아닌, 처음 프로그램이 메모리에 로딩될 때 메모리를 할당 · 클래스 변수, 정적 변수라고도 함 · 인스턴스 생성과 상관 없이 사용 가능하므로 클래스 이름으로 참조 Employee 생성( static 변수 적용 예제) public class Employee { public static int serialNum = 1000; private int employeeId; private String employeeName; pr..