자바

    [Java] 배열(Array) vs. 배열리스트(ArrayList) vs. 연결리스트(LinkedList)

    [Java] 배열(Array) vs. 배열리스트(ArrayList) vs. 연결리스트(LinkedList)

    들어가며 본 글에서는 같은 타입의 데이터를 많이 다룰 때 사용하는 자바의 순차적 자료구조 배열(Array)과 리스트(List), 특히 배열 리스트(ArrayList)와 연결 리스트(LinkedList)에 대해 비교해보겠습니다. 자료구조 측면에서 접근하는 글이므로 코드로 배열이나 리스트를 어떻게 사용하는지는 구체적으로 적지 않겠습니다. 아울러 메모리 구조나 물리적/논리적 주소, 시간복잡도 등에 대한 내용이 나오는데, 분량이 너무 많아질 것 같아서 구체적인 설명은 기재하지 않은 점 참고 바랍니다. 글 내용에서 잘못된 점이 있을 경우 언제든 피드백을 남겨주세요. 언제든 피드백 대환영입니다 :) 배열 (Array) | 기본 개념 배열이란 같은 데이터 타입의 변수들로 이루어진 자료구조로, 자바에서 기본적으로 지원..

    [Java] 객체와 클래스, 인스턴스 간 차이

    [Java] 객체와 클래스, 인스턴스 간 차이

    본 글은 객체와 클래스, 인스턴스 간 차이를 명확히 정리하기 위해 전공 서적들을 참고하여 쓴 글입니다. 실질적인 코드 작성에 도움이 되는 내용보다는 객체 지향 프로그래밍(OOP)에 대한 개념적인 내용이 대부분이며, 그나마 있는 코드도 OOP를 처음 접하는 초심자분들을 위해 제일 간단한 수준으로만 작성했으므로 참고 바랍니다. 객체 (Object) 객체 지향 프로그래밍에서 '객체'를 이해하기 위해서는 현실 세계 속의 객체와 소프트웨어 관점에서의 객체를 구분할 수 있어야 합니다. 우선 현실 세계 속의 객체란 '세상에 존재하는 의사나 행위가 미치는 대상'을 의미합니다. 사실 이 정의는 네이버 사전에 등재되어 있는 것인데, 적절해 보여서 가져왔습니다. 눈에 보이는 대표적인 객체는 사람, 자동차, 건물 등이 있습니..