본문 바로가기

JAVA34

Java 접근지정자 알아보자 1편 자바(Java)는 객체 지향 프로그래밍(OOP) 언어로서, 클래스와 클래스 간의 상호 작용을 관리하고 제어하기 위해 접근 지정자(Access Modifier)를 사용합니다. 이러한 접근 지정자는 클래스, 필드, 메서드 등의 멤버에 대한 가시성과 접근 권한을 제어하며, 정보 은닉(Encapsulation)을 실현합니다. 이 글에서는 자바에서 사용되는 접근 지정자의 종류, 역할, 사용 방법, 그리고 정보 은닉에 대해 알아보겠습니다. 1. 접근 지정자의 역할 자바에서는 접근 지정자를 사용하여 클래스 멤버의 가시성과 접근 권한을 지정합니다. 이를 통해 다음과 같은 역할을 수행합니다. 1.1. 정보 은닉 정보 은닉은 객체 지향 프로그래밍의 핵심 원리 중 하나로, 객체의 내부 상태를 외부로부터 숨기고 접근을 제한함.. 2023. 10. 7.
Java 인터페이스 알아보자 자바(Java)는 객체 지향 프로그래밍(OOP) 언어로서, 다중 상속을 지원하지 않지만 인터페이스(Interface)라는 강력한 개념을 통해 다중 상속의 장점을 취하고, 추상화와 다형성을 극대화할 수 있습니다. 이 글에서는 Java 인터페이스의 개념, 사용 방법, 다형성, 그리고 실제 예제를 통해 살펴보겠습니다. 1. 인터페이스란? 인터페이스는 자바에서 클래스와는 달리 멤버 변수(필드)를 가질 수 없으며, 오로지 추상 메서드와 상수(final 변수)만을 정의할 수 있는 특별한 종류의 참조 타입입니다. 다음과 같은 특징을 가집니다. - 모든 메서드는 추상 메서드로 선언되어 있어 메서드의 구현부가 없습니다. - 모든 필드는 상수(final)로 선언되며, 변경이 불가능합니다. - 인터페이스는 다른 클래스에서 .. 2023. 10. 2.
Java 추상클래스 를 알아보자 자바(Java)는 객체 지향 프로그래밍(OOP) 언어로서, 추상 클래스(Abstract Class)라는 중요한 기능을 제공합니다. 추상 클래스는 객체 지향 프로그래밍의 핵심 원리 중 하나인 추상화(Abstraction)를 구현하는 도구로서, 다형성(Polymorphism)을 효과적으로 활용할 수 있게 해줍니다. 이 글에서는 Java 추상 클래스의 개념, 사용 방법, 장점, 그리고 실제 예제를 통해 간단하게 알아보겠습니다. 1. 추상 클래스란? 추상 클래스란 다음과 같은 특징을 가지는 클래스입니다. - 인스턴스를 직접 생성할 수 없습니다. - 하위 클래스(subclass)에서 상속받아 사용하도록 설계됩니다. - 추상 메서드(abstract method)를 포함할 수 있습니다. 추상 메서드는 하위 클래스에서.. 2023. 9. 24.
Java 멀티 쓰레드 간단히 알아보자 자바는 멀티 쓰레드 프로그래밍을 지원하는 강력한 언어로, 병렬 처리와 동시성을 활용하여 성능 향상을 꾀할 수 있게 합니다. 이 글에서는 Java 멀티 쓰레드 프로그래밍의 기초 개념, 멀티 쓰레드를 활용한 병렬 처리 방법, 그리고 주의사항에 대해 간단히 알아보겠습니다. 1. 멀티 쓰레드와 동시성 멀티 쓰레드(Multi-threading)는 하나의 프로세스 안에서 여러 개의 쓰레드가 동시에 실행되는 프로그래밍 방식을 의미합니다. 쓰레드(Thread)는 프로세스 내에서 독립적으로 실행되는 작은 실행 단위이며, 멀티 쓰레딩을 통해 여러 작업을 동시에 수행할 수 있습니다. 동시성(Concurrency)은 멀티 쓰레딩을 통해 여러 작업이 동시에 진행되는 것처럼 보이도록 하는 개념이며, 이를 통해 프로그램의 응답성을.. 2023. 9. 24.
Java Collection 간단 정리 자바의 Collections Framework는 데이터를 저장, 관리 및 처리하는데 필요한 다양한 데이터 구조와 알고리즘을 제공하는 핵심 라이브러리입니다. 이 글에서는 Java Collections Framework의 개념, 주요 인터페이스와 클래스, 그리고 실제 활용 사례에 대해 간단히 알아보겠습니다. 1. Collections Framework란? Java Collections Framework는 자바 표준 라이브러리 중 하나로, 데이터를 저장하고 처리하는데 필요한 클래스와 인터페이스의 모음입니다. 이 프레임워크는 데이터를 구조화하고 효율적으로 다룰 수 있는 다양한 컬렉션 클래스를 제공하여 개발자들이 데이터를 쉽게 다룰 수 있도록 도와줍니다. Collections Framework의 주요 목표는 다음.. 2023. 9. 19.
Java Optional 간단 정리 자바 개발에서 가장 흔한 오류 중 하나는 널 포인터 예외(NullPointerException)입니다. 널 값을 다룰 때 발생하는 이 문제를 해결하기 위해 Java 8부터 도입된 Optional 클래스가 있습니다. 이 글에서는 Java Optional의 개념, 사용법, 그리고 실제 상황에서의 활용에 대해 간단히 알아보겠습니다. JAVA Optional 1. Optional이란? Optional은 Java 8에서 도입된 클래스로, 널 (null) 값을 다루는데 도움을 주는 컨테이너 클래스입니다. Optional은 값이 있을 수도 있고 없을 수도 있는 값을 나타내며, 이를 통해 널 포인터 예외를 방지하고 안전하게 널 값을 처리할 수 있게 합니다. 2. Optional의 생성 Optional 객체를 생성하는 .. 2023. 9. 18.