본문 바로가기
반응형

기술면접30

[Java] 클래스, 객체, 인스턴스의 차이 💡클래스란? 클래스는 객체의 설계도 또는 템플릿입니다. 클래스는 어떤 객체가 가져야 할 속성 (멤버 변수)과 동작 (메서드)을 정의합니다. 클래스는 객체를 생성하기 위한 설계도 역할을 하며, 객체를 생성할 때 실제 데이터가 아닌 객체의 특성과 행동을 정의합니다. 클래스는 여러 개의 객체를 생성할 수 있는 일종의 틀로 생각할 수 있습니다. 1 2 3 4 5 6 7 8 9 class Car { String make; String model; void start() { // Car 객체를 시작하는 동작 } } cs 💡객체란? 객체는 클래스의 인스턴스입니다. 즉, 클래스를 기반으로 실제 데이터를 포함하는 실체를 의미합니다. 객체는 클래스의 구조대로 생성되며, 클래스의 멤버 변수에 실제 데이터를 저장할 수 있습니.. 2023. 10. 10.
[Java] OOP의 4가지 특징 💡OOP란 객체 지향 프로그래밍(OOP, Object-Oriented Programming)은 소프트웨어 개발 패러다임 중 하나로, 현실 세계의 객체(Object)와 그 객체들 간의 관계를 모델링하여 프로그래밍하는 방법론입니다. OOP의 주요 특징은 다음과 같습니다. 📌 캡슐화 (Encapsulation) 캡슐화는 객체의 상태(멤버 변수)와 행동(메서드)을 하나로 묶고, 외부에서 직접 접근하지 못하도록 은닉하는 개념입니다. 즉, 데이터와 해당 데이터를 다루는 메서드를 함께 묶어 사용자가 객체의 상태를 직접 조작하지 못하게 합니다. 예시: 클래스 내부의 멤버 변수를 private로 선언하고, 외부에서 접근할 수 있는 메서드(getters와 setters)를 통해 상태를 조작하는 것이 캡슐화의 예입니다. 1.. 2023. 10. 4.
[Java] Java의 접근 제어자의 종류와 특징 💡접근 제어자란? 접근 제한자(Access Modifier)는 말 그대로 접근을 제한하기 위해 사용됩니다. 여기서 접근이란 클래스 및 인터페이스 그리고 이들이 가지고 있는 멤버의 접근을 말합니다. 어떤 경우에는 클래스와 인터페이스를 다른 패키지에서 사용하지 못하도록 막을 필요가 있습니다. 그리고 객체 생성을 막기 위해 생성자를 호출하지 못하게 하거나 필드나 메소드를 사용하지 못하도록 막아야 되는 경우도 있습니다. 이때 접근 제한자를 사용할 수 있습니다. 접근 제한자는 public, protected, private와 같이 세 가지 종류가 있습니다. public 접근 제한자: 단어 뜻 그대로 외부 클래스가 자유롭게 사용할 수 있도록 합니다. protected 접근 제한자: 같은 패키지 또는 자식 클래스에서.. 2023. 10. 3.
[Java]Java의 String이 불변객체인 이유 💡Java의 String이 불변객체인 이유 불변 문자열은 수정되지 않는 한 가지 문자열 값을 나타내며, 새로운 문자열을 생성할 때 기존 문자열을 변경하는 대신 새로운 문자열 객체를 생성합니다. 즉, 객체가 변수에 할당되면 참조를 업데이트하거나 내부 상태를 어떤 방법으로도 변경할 수 없습니다. String이 불변객체인 이유는 다음과 같습니다. 📌보안 문자열은 자주 암호화되어야 하며, 암호화된 문자열을 수정할 수 없도록 보호해야 합니다. 불변 문자열은 암호화나 해싱과 같은 변형 작업에서 안전합니다. 📌스레드 안전성 불변 문자열은 여러 스레드에서 동시에 공유될 때 스레드 안전합니다. 스레드 간의 경합 조건(Race Condition)과 같은 문제를 방지합니다. 📌 캐싱과 재사용 불변 문자열은 자주 사용되는 문.. 2023. 10. 2.
반응형