실무할때 array 랑 list쓸 일이 거의 없어서 까먹었었음 보통은 arrayList 나 HashMap을 List로 선언해서 썼어서 그런듯 Java에서 **배열(Array)**과 **리스트(List)**는 데이터를 저장하고 관리할 때 사용되지만, 용도와 동작 방식에서 많은 차이점이 있습니다. 각각의 특징과 차이점을 비교해 드리겠습니다.📌 1. 선언과 초기화배열 (Array)java복사편집// 크기가 5인 정수형 배열 선언 및 초기화int[] array = new int[5];// 값이 초기화된 배열 선언String[] strArray = {"apple", "banana", "cherry"};고정 크기: 배열의 크기를 설정하면 변경할 수 없습니다.모든 타입을 사용할 수 있습니다. (int, String..
의미 파악해보기리플렉션이란 직역하면 투영 , 반사를 뜻한다.프로그램에서는 이를 객체를 통해 클래스의 정보를 분석하는 기법을 의미하는데이를 활용하여 자바에서는 클래스 , 메서드 , 필드 , 생성자등의 정보를 동적으로 조회하고 조작할 수 있어진다.우리가 흔히 말하는 컴파일이 된 이후에 타임에서는선언된 어떤 무언가를 변경하는 것을 할 수 있게 하는것이며 객체 알 수 없는 객체의 메서드 호출을 할 수도 있어진다.동작원리자바 리플렉션은 런타임 시점에서 클래스의 메타 데이터를 분석하여 사용하는데여기서 메타 데이터란, 어떤 데이터가 가진 정보를 설명하는 데이터로만약 100줄의 데이터가 있고, 어떨 때 , 어떤식으로 등의 정보를 짧게 써둔 데이터를 5줄 만들어서메타데이터로 관리하는 것인데이러면 꼭 100줄을 안읽더라도..
예전에 신입개발자로써 취직을 준비하면서 네이티브 메서드라는게 있다는 걸 외웠던게 기억나는데이를 좀더 깊게 고민해본 글이다.자바 가상머신 스택에 대하여일단, 책을보다 이게 있는지 처음 알았다. 예전에 공부했을때는 적당히 네이터브 메서드에 영역에 퉁쳐서C처럼 생긴 메모리구조에다가 우겨넣었는데, 깊이 있게 이해 해 보니말도 안되는 걸 왜 그때는 이해하지 못하였는지 생각이 들었다. 자바라는게 결국 C에서 하던 메모리 관리를 직접하지 않고 코드에 더 집중하게해 생산성을 높이는 언어인 것을 알고 있었으면서 C 메모리체로 설명하는 자바 메모리를 의심하지 않고 공부했던 내 자신이 조금은 부끄러웠다. 일단 자바 가상머신스택은 스레드 프라이빗 영역인데쉽게 말해 스레드가 어떤 동작을 하기위해 스택 프레임을 만들게 되는데 지..
프로그램 카운터 레지스터란자바에서 사용하는 가상 메모리의 개념 중 하나이다.프로그램 , 카운터 - 카운팅기능 , 레지스터 - 등록체 이렇게 이해할 수 있는데, 프로그램 카운터란 결국스레드가 실행하면서 가지게 되는 바이트코드의 줄 을 세서, 유지하고 관리하는 개념이다. 이를 통해 흐름제어 , 순환 , 점프 ,예외처리 , 스레드 부팅(재시작)을 하게 되는데 자바 개발자라면 다들 알고 있다시피 , 자바는 여러개의 CPU를 동시에 사용해스레드를 병렬처리하게 되는데 이때 우선순위가 주어지게 되고, 어떤 특정시점에서 우선해서 다른 스레드를 동작시켰다면, 멈춘 위치를 기억해야하는데그런 역할을 프로그램 카운터가 하게된다는 것이다. 그리고 이러한 영역을 프라이빗한 스레드 영역이라고 하게된다.그래서 해당 영역에서 문제가 ..
JAR 파일용도: 자바 애플리케이션이나 라이브러리 배포용으로 사용됨. 주로 데스크탑 애플리케이션이나 독립적인 자바 프로그램에서 쓰임.포함된 내용: 자바 클래스 파일(.class), 메타데이터(META-INF/MANIFEST.MF), 리소스 파일(이미지, 텍스트 파일 등) 포함됨.특징: 실행 가능한 JAR 파일로 만들어 java -jar filename.jar 명령어로 실행 가능함.WAR 파일용도: 자바 웹 애플리케이션 배포용으로 사용됨. 웹 서버나 애플리케이션 서버에서 실행됨.포함된 내용: 웹 애플리케이션 파일들(서블릿, JSP, HTML, CSS, JavaScript), 자바 클래스 파일, 라이브러리(JAR 파일), WEB-INF/ 디렉토리와 web.xml 파일 포함됨.특징: 주로 웹 서버에 배포되어 ..
들어가며디자인 패턴이란, 클래스들 간의 관계를 어떻게 잘 연결할 것인지에 대해 이야기하는 것입니다.생성 패턴이러한 패턴들은 기존 코드의 유연성과 재사용을 증가시키는 다양한 객체 생성 메커니즘들을 제공합니다.구조 패턴이러한 패턴들은 객체들과 클래스들을 구조를 유연하고 효율적으로 유지하면서 더 큰 구조로 조립하는 방법을 설명합니다.행동 패턴이러한 패턴들은 알고리즘들 및 객체 간의 책임 할당과 관련이 있습니다.SingleTone어떤 클래스가 최대 한 번의 인스턴스만을 갖도록 보장하는 패턴입니다. 이 패턴을 사용하면 특정 클래스의 인스턴스가 오직 하나만 존재하도록 제한할 수 있으므로, 리소스의 낭비를 방지하고 객체 간의 일관성을 유지할 수 있습니다.Private Constructor(비공개 생성자): 클래스 내..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.