본문 바로가기
728x90

언어(Language)/Java27

[Java] Scanner 클래스 Scanner 클래스- java.util 패키지에 포함되어 있다. (기본 패키지 외의 패키지라 사용할 때 import를 해줘야함)- 주로 표준 입력(키보드) 으로부터 데이터를 입력 받을 때 사용- Scanner는 사용자의 입력을 공백(스페이스, 탭), 줄바꿈 등을 기준으로 토큰(단어) 으로 잘라서 읽음- 문자열을 공백이나 개행 문자 등을 기준으로 나눠서 다양한 타입(int, double, String 등)으로 변환해주는 기능 # 사용 예시import java.util.Scanner; // Scanner 클래스 임포트public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in).. 2025. 4. 24.
[Java] Lombok 어노테이션 롬복 (Lombok) - Java 개발자가 보일러플레이트 코드를 줄이고 개발 생산성을 향상시키기 위한 라이브러리 - 어노테이션을 사용하여 컴파일 시점에 코드를 자동으로 생성해주는 기능을 제공 - 이를 통해 Getter, Setter, 생성자 등 반복적으로 작성해야 하는 코드를 자동으로 생성할 수 있음 @Getter - 필드에 대한 Getter 메서드 자동 생성 - 필드의 값을 반환하는 역할 - 필드의 접근제어자가 'private' 이 아닌 경우에만 생성 - 'static' 필드나 'final' 필드에는 생성 X @Setter - 필드에 대한 Setter 메서드 자동 생성 - 필드의 값을 설정하는 역할 - 필드의 접근제어자가 'private' 이 아닌 경우에만 생성 - 'final' 필드에는 생성 X @D.. 2024. 2. 24.
[Java] 생성자 생성자(Constructor) - 객체가 생성될 때 호출되는 특별한 메서드 - 객체의 초기화를 담당, 객체가 메모리에 할당될 때 자동으로 호출 - 주로 클래스 내부에 정의 - 클래스와 동일한 이름을 가짐 - 리턴 타입이 없음 - 인스턴스화 시 호출됨 ('new' 키워드) - 오버로딩 가능 # 생성자의 목적 - 주된 목적은 객체의 초기화 - 초기화 작업은 주로 멤버 변수의 값 설정, 리소스 할당, 객체 간의 관계 설정 등을 포함 # 객체의 생성과 생성자 호출 - 객체를 생성할 때 'new' 키워드를 사용 - 생성자는 객체가 생성될 때 자동으로 호출되어 초기화 작업을 수행 # 기본 생성자 (Default Constructor) - 클래스에 명시적으로 생성자를 작성하지 않으면 컴파일러가 자동으로 기본 생성자를.. 2024. 2. 21.
[Java] 접근 제어자, 정보은닉, 캡슐화 접근 제어자(Access modifier) - 클래스, 메서드, 변수 등 멤버들에 대한 접근 권한을 제어하는데 사용 - 코드의 캡슐화, 보안, 유지 보수성 향상 가능 접근 제어자 종류 # private - 동일한 클래스 내에서만 접근 가능 - 캡슐화를 구현하는데 사용 # default - 접근 제어자를 명시하지 않는 경우 default 접근 제어자를 가짐 - 동일한 패키지 내에서만 접근 가능 # protected - 동일한 패키지 내의 클래스와 해당 클래스를 상속한 클래스에서 접근 가능 → 외부에서는 접근 불가, 상속 관계에 있는 클래스에서는 접근 가능 # public - 어떤 클래스에서든 접근 가능 정보 은닉 (Information hiding) - 접근 제어자를 이용하여 정보은닉을 실현 - 객체의 무.. 2024. 2. 14.
CURD기능 활용해서 책스토어 프로그램 만들어보기 C R U D 란 무엇일까? Create - 새로운 데이터를 생성하는것을 의미 합니다. Read - 데이터를 조회 하는 것을 의미 합니다. Update - 기본에 데이터를 수정하는 것을 의미합니다. Delete - 기본에 데이터를 삭제하는 것을 의미합니다. Book 클래스 package ch09; public class Book { private String title; private String author; private int totalPage; // 생성자 오버로딩 public Book(String title, String author) { this.title = title; this.author = author; } public Book(String title, String author, int.. 2023. 8. 11.
get,set 메서드 get()/ set() 메서드 private 으로 선언된 멤버 변수 (필드)에 대해 접근, 수정할 수 있는 메서드를 public으로 제공 get() 메서드만 제공 되는 경우 read-only 필드 이클립스에서 자동으로 생성해주는 단축 기능이 존재한다. Book 클래스 설계해보기 package ex_06; public class Book { // 상태(속성) private String name; private String writer; private String publisher; private int price; // 생성자 public Book() { } public Book(String name, String writer, String publisher, int price) { } // get 메서드.. 2023. 8. 11.
[Java] 참조 자료형 (Reference Data Type) 참조 자료형 - 기본 자료형을 제외한 나머지 모든 자료형 - 객체의 주소를 저장, 이를 통해 해당 객체에 접근하고 사용 - 객체의 크기나 내용을 직접적으로 저장하지 않고 객체의 위치를 가리키는 값(주소)를 저장 - 객체는 힙 메모리에 저장 ​ ​ 참조 자료형 종류 # 클래스 (Class) - 객체를 생성하기 위한 템플릿, 객체의 상태와 행위를 정의 - 예) String, Integer, ArrayList 와 같은 내장 클래스 또는 사용자가 직접 정의한 클래스 # 인터페이스 (Interface) - 추상 메소드들의 집합을 정의, 해당 인터페이스를 구현하는 클래스에서 이를 구현 - 다중 상속을 구현하기 위해 사용, 코드의 유연성을 높여줌 - 예) Comparable, Runnable # 배열 (Array) .. 2023. 8. 11.
[Java] 스택 메모리와 힙 메모리 스택 메모리 (Stack memory) - 정적 메모리 할당 - 함수의 호출과 관계되는 지역변수와 매개변수가 저장되는 영역 - 함수의 호출과 함께 할당되며, 함수의 호출이 완료되면 소멸 - 푸시(push) 동작으로 데이터를 저장, 팝(pop) 동작으로 데이터를 인출 - 후입선출(LIFO, List-In First-Out) 방식 힙 메모리 (Heap memory) - 동적 메모리 할당 - 객체를 선언하면 항상 힙 메모리 영역에 생성되며, 객체에 대한 참조(주소) 값은 스택 메모리에 저장 - 가비지 컬렉터가 없으면 프로그래머가 직접 관리(할당/해제) 해줘야 함 2023. 8. 11.
[Java] 연산자 항과 연산자 - 항 (Operand) : 연산자에 의해 조작되거나 처리되는 값이나 변수 - 연산자 (Operator) : 항들을 사용하여 특정한 작업을 수행하는 기호나 키워드 대입 연산자 (=) - 변수에 다른 변수나 값을 대입하는 연산자 - 우측 피연산자의 값을 좌측 피연산자에 할당 산술 연산자 복합 대입 연산자 증감,감소 연산자 관계 연산자 (비교 연산자) 논리 연산자 삼항 연산자 (조건 연산자) 인스턴트 생성 연산자 ('instanceof' 연산자) - 객체가 특정 클래스의 인스턴스인지 확인 하는데 사용 - 두 개의 피연산자를 갖는 이항 연산자 - 첫 번째 피연산자는 객체, 두 번째 피연산자는 클래스 또는 인터페이스 [Java] 연산자 예시 산술 연산자 (사칙 연산자) package ch03; pu.. 2023. 8. 11.
728x90