분류 전체보기(89)
-
arraylist linkedlist 시간복잡도
ArrayList, LinkedList 이번엔 java의 List를 한번 알아보겠습니다. List란? List 인터페이스는 java의 Collection을 확장한 인터페이스 입니다. index를 기반으로 list가 구성됩니다. 순서를 가지며 추가, 탐색이 가능합니다. ArrayList ArrayList는 배열(array)을 기반으로 두고 있습니다. 장점 데이터에 순서가 있음 데이터의 중복 저장 허용 index를 통한 검색 빠름 단점 데이터 추가, 삭제가 느림 ArrayList의 데이터는 위와같이 저장되고 관리됩니다. 데이터의 일반적인 삽입 O(1) ArrayList ar = new ArrayList(); ar.add("data"); ar.add("data2"); 일반적인 add의 경우 마지막에 데이터가 ..
2022.12.18 -
lombok 실습 이후 결과물 파일 확인하기
[ Lombok 이란? ] Lombok이란 어노테이션 기반으로 코드를 자동완성 해주는 라이브러리이다. Lombok을 이용하면 Getter, Setter, Equlas, ToString 등과 다양한 방면의 코드를 자동완성 시킬 수 있다. package com.example.demo; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.EqualsAndHashCode; @Data @Builder//이름, 전화번호, 주소를 개별적으로 사용가능(필요한것만 가져와서 사용) @AllArgsConstructor @EqualsAndHashCode(of = {"name","contact"})//직접 비교 대상이..
2022.12.18 -
파일디스크립터
파일 디스크립터(File Descriptor)란? 리눅스와 유닉스에서는 시스템을 전부 파일로 처리하여 관리한다. (하드웨어 등 모든 장치도 포함) 시스템에서 프로세스가 파일에 접근하기 위한 방법으로 파일 디스크립터(FIle Descriptor)라는 핸들이 필요하다. 해당 파일을 open할때( 해당파일에 접근할 때 ) 파일 디스크립터는 0부터 N까지 즉, 음수가 아닌 0부터 차례대로 숫자를 부여받으며, 0, 1, 2는 프로세스가 메모리에서 실행을 시작할때 기본적으로 할당되는 파일 디스크립터이다. 기본적으로 할당받는 파일 디스크립터 0번 : 표준 입력(Standard Input) / STDIN_FILENO 1번 : 표준 출력(Standard Output) / STDOUT_FILENO 2번 : 표준 에러(St..
2022.12.18 -
리플렉션
먼저 ! java.lang.class객체 대해서 알아보기 class클래스 자바는 클래스와 인터페이스의 메타 데이터를 class클래스로 관리 메타 데이터: 타입이름 및 파일 경로 정보, 필드정보 , 메소드 정보 클래스 객체 얻는 방법 package main231; public class Car { public static void main(String[] args) { } } package main231; public class ClassExample { public static void main(String[] args) throws ClassNotFoundException { //클래스 부터 얻는 방법 Class clazz = Car.class; /* Class clazz1 = Class.forName..
2022.12.15 -
캐시메모리
사전적의미: 물건을 일시적으로 저장 보관하기 위해 사용하는 곳 기술적의미: 자주 필요한 데이터나 값의 복사본을 일시적으로 저장, 보관하기 위해 사용하는곳 캐시: 컴픁터 과학에서 데이터나 값을 미리 복사해 놓는 임시 장소를 가리킨다. 캐시는 캐시의 접근시간에 비해 원래 데이터를 접근하는 시간이 오래 걸리는 경우나 값을 다시 계산하는 시간을 절약하고 싶은 경우에 사용한다. 캐시에 데이터를 미리 복사해 놓으면 계산이나 접근 시간 없이 더 빠른 속도로 데이터에 접근 할 수있다. 캐싱: 이러한 캐시라는 작업을 하는 행위(행동)이다. 컴퓨터 분야에서 다양하게 사용된다, cpu 성능 향상, 메모리 웹 페이지를 동작시키는 분야까지 가리지 않고 사용된다. cpu 와 메모리간 성능 차이 1)cpu는 데이터 처리 위해 메모..
2022.12.10 -
static inner class vs non static inner class
내부클래스 - 클래스 안의 클래스 class A{// 일반 클래스 2개 } class B{ } 장점: - 내부 클래스에서 외부 클래스의 멤버들을 쉽게 접근할 수 있다.(객체 생성 없이도 A의 멤버 접근 가능) -코드의 복잡성을 줄일 수 있다( 캡슐화) class A{//외부 클래스 class B{//내부 클래스 } } package main1100; class AAA{//AAA는 BBB의 외부 클래스 int i = 100; class BBB{//BBB는 AAA의 내부 클래스 void method() { AAA a = new AAA(); System.out.println(a.i); System.out.println(i);//객체 생성없이 외부 클래스의 멤버 접근 가능 } } } /* * class CCC{..
2022.12.10