ONLINE CLASS

자바(JAVA) 기초 + 고급

COURSE FOCUS

이 강의에서 배우는 핵심 실무

자바의 기본·참조 자료형과 연산자를 비교하며 변수가 값을 다루는 방식을 익힙니다. 객체지향 개념과 익명클래스·예외 처리를 학습하고 MATH 클래스, 제네릭 및 LIST·ARRAYLIST를 사용해 계산과 자료 저장을 실습합니다. Thread와 Runnable의 역할 및 주요 메소드를 살펴보면서 언어 기초에서 컬렉션과 작업 실행 구조로 학습 범위를 넓힙니다.

?

수강 전 꼭 확인하세요

수강 전 자주 묻는 내용을 간단히 안내드립니다.

Q초보자도 교재 없이 수강 가능한가요? 프로그램 정보는?
A

네, 영상과 실습자료로 쉽게 학습할 수 있습니다. 알지오는 원격평생교육원으로 프로그램 관련 정보는 제공하지 않습니다.

◆
기업이 선택한 신뢰 강의

검증된 커리큘럼과 전문 강사진으로 높은 만족도를 제공합니다.

자세히 보기  >
♥
수강료 일부는 사회환원에 사용됩니다.

작은 나눔이 더 나은 내일을 만듭니다.

자세히 보기  >
REAL REVIEW

수강생 리얼후기!

실제 수강생의 학습 경험을 확인해 보세요.

수강후기를 불러오는 중입니다.

RECENT Q&A

최근 수강질문

최근 등록된 수강질문을 작성순서대로 확인해 보세요.

ALZIO DEEP GUIDE

Java를 더 깊게 이해하기

자료형·객체지향에서 문자열·컬렉션·Thread까지 이어지는 20강을 Java의 실행환경과 표준 API 구조에 연결했습니다. 현재 Java의 추가 기능과 실제 강좌 범위를 구분해 설명합니다.

공식 기술정보 확인20강 커리큘럼 연결2026 현재 기술정보

자바(JAVA) 기초 + 고급 · 20강 · 11시간 52분

01

Java는 어떤 언어인가

Java는 정적 타입을 사용하는 범용 언어입니다. 기본형·참조형과 객체 구조를 통해 데이터를 표현하고, 컴파일러가 형식과 문법의 일부 오류를 실행 전에 찾습니다. 객체지향과 표준 API를 기반으로 프로그램을 구성하며 언어 문법과 외부 프레임워크는 구분해야 합니다.

Java와 JavaScript는 별개의 언어입니다. 이름이 비슷하다는 이유로 같은 실행환경이나 같은 문법을 쓴다고 생각하면 안 됩니다. 자바 언어의 기반을 익힌 뒤 목적에 맞는 서버·데스크톱·도구 개발 기술로 확장합니다.

02

Java·JDK·JVM·개발도구의 관계

Java는 언어, JDK는 컴파일러와 개발 도구를 포함하는 개발 환경, JVM은 클래스 코드를 실행하는 가상 머신입니다. IDE는 작성·실행·디버깅을 돕는 도구입니다. IDE만 설치한 상태와 실제 프로젝트에 선택된 JDK는 다를 수 있습니다.

일반적인 컴파일 흐름에서는 .java 소스를 javac로 컴파일해 .class 코드를 만들고 JVM에서 실행합니다. 플랫폼별 JDK와 라이브러리 조건을 맞춰야 하므로 파일을 옮기면 어떤 환경에서도 무조건 실행된다고 설명할 수는 없습니다.

  1. Java 소스
  2. JDK 컴파일러
  3. 클래스 코드
  4. JVM과 라이브러리
  5. 실행 결과
03

문제 해결에 쓰는 핵심 기능

기술 전체의 기능을 소개합니다. 각 카드의 강좌 연결 표시는 공개 커리큘럼에서 확인된 범위를 구분합니다.

타입과 변수

기본형과 참조형을 구분하고 변수에 사용할 형식을 정합니다. 컴파일러가 잘못된 형식 사용을 찾는 데 도움이 됩니다. 숫자의 범위와 형변환 규칙을 이해하면 계산 결과가 의도와 달라지는 이유를 설명할 수 있습니다.

강좌에서 직접 학습 · 1~4강

조건과 반복

조건별 실행과 여러 항목의 처리를 표현합니다. 정상 입력뿐 아니라 빈 배열·경계값·종료 조건을 시험하는 데 필요합니다. 같은 계산을 복사하기보다 흐름과 데이터를 나눠 작성하세요.

강좌에서 직접 학습 · 4~5강

클래스와 객체

상태와 동작을 갖는 객체를 클래스의 구조로 정의합니다. 관련된 값을 함께 다루고 책임을 나누는 데 사용합니다. 객체를 만들었다는 사실과 필요한 설계를 완성했다는 사실은 다릅니다.

강좌에서 직접 학습 · 1·6강

인터페이스와 상속

인터페이스는 사용할 동작의 계약을, 상속은 기반 타입과 파생 타입의 관계를 표현합니다. 구현을 바꿔도 호출 측이 같은 계약을 사용하게 만드는 데 유용합니다. 무조건 상속을 늘리는 것이 좋은 설계는 아닙니다.

강좌에서 직접 학습 · 7~9강

패키지와 접근 제어

코드를 이름 공간으로 조직하고 사용할 수 있는 범위를 제한합니다. 같은 이름의 클래스를 구분하고 내부 구현을 보호하는 데 필요합니다. 폴더 이름·선언·클래스 경로가 어떻게 연결되는지 함께 보세요.

강좌에서 직접 학습 · 7강

문자열

문자 데이터를 담고 비교·검색·추출·변환하는 API를 제공합니다. 참조 비교와 내용 비교를 구분해야 조건문이 원하는 대로 동작합니다. 문자열을 반복 구성할 때는 작업에 맞는 도구를 선택하세요.

강좌에서 직접 학습 · 13~15강

제네릭

타입을 매개변수로 사용하는 구조를 작성합니다. 여러 데이터 타입에 공통 코드를 재사용하면서 허용하는 원소 타입을 표현할 수 있습니다. 컬렉션에 잘못된 타입을 넣는 문제를 줄이는 데 도움이 됩니다.

강좌에서 직접 학습 · 16강

컬렉션

목록·집합·키 기반 조회처럼 서로 다른 데이터 관리 목적을 제공합니다. 순서·중복·조회 방식에 따라 List·Set·Map을 선택합니다. 데이터가 많아질수록 구조를 선택한 이유가 성능과 코드 가독성에 영향을 줍니다.

강좌에서 직접 학습 · 16~18강

예외

실행 중 실패를 전달하고 처리하는 흐름입니다. 잘못된 입력과 정상 결과를 구분하고 정리할 작업을 놓치지 않도록 사용합니다. 예외를 무조건 잡아서 숨기면 실패 원인을 진단하기 어려워집니다.

강좌에서 직접 학습 · 11~12강

스레드

동시에 진행할 작업의 실행 흐름을 표현합니다. 공유 데이터와 종료·대기 조건을 함께 설계해야 합니다. 스레드 수를 늘린다고 계산이 자동으로 빨라지는 것은 아닙니다.

강좌에서 직접 학습 · 20강

Stream API

데이터의 필터·변환·집계 작업을 연결해 표현하는 API입니다. 처리 목적을 읽기 쉽게 묶을 수 있지만 자료를 저장하는 컬렉션 자체와는 다릅니다. 스트림 문법과 병렬 실행의 선택은 구분해야 합니다.

현재 기술 참고 · 본 강좌 직접 학습으로 확인되지 않음

Records와 가상 스레드

현재 Java에는 데이터 표현과 많은 대기 작업을 다루는 추가 도구가 있습니다. records와 가상 스레드는 목적이 서로 다릅니다. 이 가이드에서는 기존 객체지향·Thread 학습을 최신 기능 학습 전체와 동일시하지 않습니다.

현재 기술 참고 · 본 강좌 직접 학습으로 확인되지 않음
04

이 20강의 개발·실습 흐름

1~5강은 자료형·연산·조건·반복·배열입니다. 6~12강은 참조형·패키지·상속·인터페이스·내부 클래스·예외·어노테이션으로 이어집니다. 13~19강은 API·문자열·수학·제네릭·컬렉션·유틸이고 20강은 Thread입니다. 문법과 표준 API를 연결하는 흐름으로 학습하세요.

프로그램의 일반적인 흐름은 작성·컴파일·실행·오류 분석입니다. 컴파일 단계에서 타입·선언을 확인하고 실행 결과가 다르면 입력·조건·객체 상태를 점검하세요. 웹 프레임워크로 배포하는 과정은 이 커리큘럼의 직접 학습 범위로 표시하지 않습니다.

  1. 형식과 제어 흐름
  2. 객체 구조 설계
  3. API 사용
  4. 컬렉션 선택
  5. 실행 결과 확인
  6. Thread 실습
05

기본형·참조형·객체의 구조

기본형 값과 객체를 가리키는 참조는 같은 의미가 아닙니다. 여러 참조가 같은 객체를 가리키면 객체의 변경이 함께 보일 수 있습니다. 객체 상태와 메서드를 구분하면 어느 코드가 데이터를 바꿨는지 추적하기 쉽습니다.

캡슐화는 내부 상태와 변경 규칙을 관리하고 추상화는 필요한 계약을 드러내는 설계 관점입니다. 상속과 다형성은 기반 타입의 계약으로 서로 다른 구현을 사용할 수 있게 합니다. 클래스 개수를 늘리는 것보다 역할과 책임을 분명히 나누는 것이 중요합니다.

06

문자열·숫자·오류를 다루는 실무 관점

14~15강의 문자열 처리에서는 내용 비교·검색·추출·변환을 따로 보세요. null인 참조와 빈 문자열은 다르므로 입력 조건을 나누어 시험해야 합니다. 반복되는 문자열 구성과 한 번의 변환은 작업 방식이 다를 수 있어 StringBuilder·StringBuffer를 배우는 이유를 함께 이해하세요.

16강의 Math와 19강의 BigDecimal은 다루는 숫자와 목적이 다릅니다. 숫자가 표시된다고 정밀도와 반올림 기준이 자동으로 정해지는 것은 아닙니다. 11~12강의 예외를 연결해 계산할 수 없는 입력과 정상 결과를 구분하는 연습이 유용합니다.

07

컬렉션과 스레드를 이해하는 연결 고리

16~18강의 핵심은 저장할 데이터에 맞는 컬렉션을 선택하는 것입니다. 순서가 중요한 목록, 중복을 구분하는 집합, 키로 값을 찾는 맵은 서로 다른 질문에 답합니다. 같은 데이터를 각각 넣어보고 조회·추가·중복 처리 결과를 비교하세요. 제네릭은 허용할 원소 타입을 표현하는 연결 고리입니다.

20강의 Thread·Runnable·sleep은 실행 흐름을 이해하는 주제입니다. 같은 객체를 여러 흐름이 사용하면 결과가 실행 순서에 영향을 받을 수 있습니다. 이 회차를 가상 스레드나 모든 동시성 API를 다루는 심화 과정으로 해석하지 마세요. 현재 기능의 존재와 공개 강좌 범위는 별개입니다.

08

현재 Java 환경과 강좌 환경의 관계

현재 설명은 Dev.java와 Java SE 공식문서의 개념을 기준으로 검토했습니다. 강좌 공개 제목에는 JDK의 정확한 버전이 없으므로 제작 버전을 추측하지 않습니다. 프로젝트에서 사용하는 JDK·컴파일 대상·라이브러리 버전을 따로 확인해야 합니다.

현재 Java에는 records·Stream API·가상 스레드 등 이 공개 커리큘럼에 명시되지 않은 기능도 있습니다. 20강의 Thread를 최신 가상 스레드 학습과 동일시하지 않습니다. 안정 기능과 preview 기능의 실행 조건도 다르며, 이 강좌를 최신 Java 신규 기능 전체 과정으로 표시하지 않습니다.

19강의 Date·Calendar는 강좌에서 직접 다루는 기존 API입니다. 현재의 날짜·시간 API 선택은 별도의 추가 학습으로 구분하세요. 기존 API를 배운 사실과 권장 API 전체를 익힌 사실은 다릅니다.

09

C#·Python·JavaScript와 비교하기

타입을 확인하는 시점과 실행 플랫폼을 함께 비교하세요. 개발 목적에 맞는 라이브러리와 배포 환경도 언어 선택에 영향을 줍니다. 아래 언어의 전체 기능을 이 강좌에서 배우는 것은 아닙니다.

C#·Python·JavaScript와 비교하기
언어타입·실행 접근목적에 따른 학습 연결
Java정적 타입·JDK/JVM 생태계이 과정의 객체·표준 API 기반
C#정적 타입·.NET 플랫폼플랫폼과 라이브러리 차이를 비교
Python동적 타입·인터프리터와 패키지자동화·데이터 처리 목적이면 비교
JavaScript브라우저 등 별도 실행환경의 언어Java와 이름이 비슷해도 별개의 학습 대상
10

Java 기술개념과 알지오 20강 연결

회차는 공개 커리큘럼의 순서입니다. 최신 Java 기능과 강좌에서 실제 학습하는 내용은 구분했습니다.

Java 기술개념과 알지오 20강 연결
기능·개념무엇인가실무 의미강좌 회차학습 상태
자료형·연산기본형·참조형과 계산 규칙입력과 계산 결과의 형식 관리1·2·3·4강강좌에서 직접 학습
조건·반복·배열분기·항목 순회·고정 길이 구조처리 흐름 구성4·5강강좌에서 직접 학습
참조형·객체지향객체와 타입의 관계상태·동작 모델링6강강좌에서 직접 학습
패키지·접근 제어·상속코드 조직과 기반·파생 관계구현 범위와 재사용 관리7·8강강좌에서 직접 학습
인터페이스·추상 클래스·enum동작 계약과 제한된 값역할·타입 구조 표현9강강좌에서 직접 학습
내부·익명 클래스클래스 안의 구조와 이름 없는 구현사용 범위에 맞춘 구성10·11강강좌에서 직접 학습
예외·어노테이션실패 전달과 메타정보오류 처리·선언 정보 이해11·12강강좌에서 직접 학습
String·문자열 구성비교·검색·변환·구성외부 문자 데이터 처리13·14·15강강좌에서 직접 학습
Math·제네릭수학 API와 타입 매개변수계산과 안전한 재사용16강강좌에서 직접 학습
컬렉션List·Set·Queue·Map 구조데이터 목적별 저장·조회16·17·18강강좌에서 직접 학습
유틸 APIDate·Calendar·Arrays·BigDecimal 등시간·배열·숫자 처리19강강좌에서 직접 학습
Thread·Runnable실행 흐름과 작업 표현동시 진행의 기반 이해20강강좌에서 직접 학습
11

입문자가 자주 혼동하는 것

Java와 JavaScript는 같은가?

별개의 언어와 실행 생태계입니다. 이 20강은 Java 기본형·객체·API·Thread를 다룹니다. JavaScript ES6 과정은 웹 실행환경과 언어 기능을 따로 학습하는 과정입니다.

IDE를 설치하면 JDK 설정도 끝나는가?

작성 도구와 실제 프로젝트의 JDK 선택은 구분해야 합니다. 컴파일러와 실행 환경이 다른 버전을 사용할 수도 있습니다. 실행 오류가 나면 도구 이름보다 선택된 JDK와 클래스 경로를 먼저 확인하세요.

문자열의 == 비교는 항상 내용 비교인가?

참조 비교와 문자열 내용 비교는 다릅니다. 14강의 String 내용 비교를 자료형·참조 개념과 함께 읽으세요. 같은 글자라고 참조까지 같다고 가정하지 않습니다.

컬렉션은 전부 배열의 다른 이름인가?

목록·집합·맵은 저장과 조회의 목적이 다릅니다. 16~18강에서 순서·중복·키 조회를 각각 비교하세요. 데이터 구조의 이름보다 필요한 작업 조건을 먼저 정하는 것이 좋습니다.

스레드를 많이 만들면 무조건 빨라지는가?

작업 종류와 공유 데이터·실행 비용에 따라 달라집니다. 20강의 실행 흐름을 결과 순서와 함께 확인하세요. CPU 계산과 외부 응답 대기를 같은 문제로 취급하지 않습니다.

20강까지 배우면 Spring 서버도 만드는가?

언어·표준 API와 서버 프레임워크는 다른 학습 범위입니다. 공개 커리큘럼에는 Spring 웹 애플리케이션 제작이 직접 명시되지 않았습니다. Java 기초 이후 별도 서버 과정으로 연결하세요.

12

목적에 맞춘 다음 학습

스프링 프레임워크

Java 기반을 서버 프레임워크 또는 네트워크 개발로 확장할 때 공개 커리큘럼을 비교하세요.

자료 보기 →

자바 네트워크

Java 기반을 서버 프레임워크 또는 네트워크 개발로 확장할 때 공개 커리큘럼을 비교하세요.

자료 보기 →

Java 분야 과정 비교

기초와 목적별 실무 과정을 비교합니다.

자료 보기 →

프로그래밍 분야 학습

언어와 응용 분야의 학습 경로를 확인합니다.

자료 보기 →

기술정보는 Java 공식문서를 기준으로 검토했으며, 강좌 범위는 알지오 자바(JAVA) 기초 + 고급의 공개 20강 커리큘럼을 기준으로 구분했습니다.

공식 기술정보 확인일: 2026-10-05 · 강좌 업데이트일을 의미하지 않습니다.

자바(JAVA) 기초 + 고급 자바(JAVA) 기초 + 고급
  • 자바(JAVA) 기초 + 고급

  • 강의구성
  • (20강) 전체 : 11시간 52분|평균 : 35분36초
  • 이용기간/강사
  • 1개월2개월
    알지오 R&D [IT]
  • 증빙가능
  • 수료증, 수강증, 학습진도
  • 수강료
  • 190,000원할인95,000원
?

수강 전 꼭 확인하세요

수강 전 자주 묻는 내용을 간단히 안내드립니다.

Q 초보자도 교재 없이 수강 가능한가요? 프로그램 정보는?
A

네, 영상과 실습자료로 쉽게 학습할 수 있습니다. 알지오는 원격평생교육원으로 프로그램 관련 정보는 제공하지 않습니다.

  • 01.21분 변수와 기본 자료형
    객체지향 언어, 계산기 클래스, 변수, 참조 자료형, 기본 자료형(정수형, 소수형)
    JDK 설치, eclipse 세팅, 변수, 계산기 클래스
  • 02.34분 기본 자료형과 연산자 1
    기본 자료형(소수형, boolean), 단항 연산자, 다항 연산자, 산술 연산자, 비교 연산자, 등가 비교 연산자, 논리 연산자, 삼항 연산자
    기본 자료형, 지역 변수, 기본 자료형과 참조 자료형, byte, float,double, 자바의 기본값
  • 03.40분 기본 자료형과 연산자 2
    기본 자료형(소수형, boolean), 단항 연산자, 다항 연산자, 산술 연산자, 비교 연산자, 등가 비교 연산자, 논리 연산자, 삼항 연산자
  • 04.38분 연산자와 조건문
    자료형의 형 변환, 조건문, IF, SWITCH
    자료형의 형 변환, 자료형의 형 변환 실습, 참조 자료형, IF 처리문 실습, SWITCH 문, while문
  • 05.41분 반복문, 배열
    반복문과 배열에 대해 학습합니다.
    for문, 이율을 구하는 클래스, 배열, 기본 자료형, Array, 기본 자료형의 배열, string 배열, array 배열, 참조 자료형, int 배열, 인스턴스 변수, 이차원 배열, length, 중첩 for문
  • 06.33분 객체지향 1
    참조 자료형에 대해 학습합니다.
    참조 자료형, 클래스 생성, 예약어(this), 오버로딩(overloading), printf, 메소드, static 메소드, 접근권한, Static 블록, 참조 자료형으로 변경, calculateNumbers
  • 07.36분 객체지향 2
    패키지, 접근제어자, 상속에 대해 학습합니다.
    패키지, 패키지 생성, 패키지 선언, sub 클래스, 접근제어자, 접근제어자 관계, 접근제어자에 따른 접근권한, public 클래스, 상속(Parent, Child), Parent, Child 클래스의 기능들, 오버로딩(overloading)
  • 08.32분 객체지향 3
    상속, Object에 대해 학습합니다.
    Inheritance, Object 메소드, Parent Array, 참조자료형 형변환, 상속 정리, Object, 오버로딩(overloading), Member DTO, equals(), hashcode, equals 메소드 오버로딩 조건(재귀, 대칭, 타동적, 일관, null), hashcode
  • 09.36분 객체지향 4
    인터페이스, 추상클래스, enum, 방법론에 대해 학습합니다.
    객체 지향 절차, 인터페이스, 인터페이스, 추상클래스, 클래스 비교표, final 클래스 구현, enum
  • 10.33분 객체지향 5
    내부클래스(Nested 클래스), 익명클래스에 대해 학습합니다.
    내부 클래스 (Nested 클래스), inner, Nested 클래스의 용도, inner (2), 익명클래스, 참조자료형 실습
  • 11.41분 객체지향 6
    익명클래스, 예외에 대해 학습합니다.
    imple, enums 클래스, 내부, 외부 클래스, 익명 클래스, 예외, 에러와 런타임에 대한 예외
  • 12.26분 객체지향 7
    예외, 메타 어노테이션에 대해 학습합니다.
    예외, 예외 상속 예제, 어노테이션, 어노테이션의 종류, 어노테이션 예제, 메타 어노테이션, 메타 어노테이션 예제, 메타 어노테이션의 종류
  • 13.32분 자바 API 활용
    API 구성, 클래스, 인터페이스의 상세 정보, DEPRECATED, 어노테이션과 ENUM의 상세 정보, STRING 클래스, 생성자에 대해 학습합니다.
    Javadoc 설치, Summary, String 예제, 어노테이션과 ENUM의 상세 정보, 자바 API 활용, String 예제
  • 14.30분 STRING 메소드
    STRING 클래스 생성자 예제, BYTE로 변환, Null 체크, STRING 내용 비교, 검색 메소드, STRING 내에서 위치찾기, 값 추출, 변경, 주의할 메소드, STRINGBUFFER와 STRINGBUILDER
    문자열길이 확인, 빈 문자열확인, 같은문자열 비교, 특정조건 문자열, 원하는위치찾기, char단위의 값, char배열의 값, 변환 메소드, 일부의 값 잘라내기, STRING배열로 나누기
  • 15.40분 STRING 메소드, System 클래스
    문자열을 합치는 메소드, 공백을 없애는 매소드, 내용을 교체하는 메소드, 특정 형식에 맞춰 값을 치환하는 메소드, 대소문자를 바꾸는 메소드, 기본 자료형을 문자열로 변환하는 메소드, STRING 클래스 단점 보완, 숫자 처리 클래스
    시작화면, 공백제거, 특정값 치환, 대소문자 변경, 기본자료형, STRING 보완, java lang, Min과 Max, System 클래스, GC수행, PrintStream
  • 16.40분 MATH 클래스
    절대값 부호, 최대 최소값, 올림 버림, 제곱 제곱근, 삼각 함수, 로그, 난수, 소수, 제네릭제네릭 타입의 이름 정하기, 제네릭 선언에 사용하는 타입 범위 지정, 메소드를 제네릭하게 선언, 컬렉션-LIST, 자바 컬렉션, LIST 인터페이스, ARRAYLIST의 생성자
    MATH 클래스, 올림/버림, 삼각 함수, 제네릭타입, 컬렉션, LIST
  • 17.39분 자바 컬렉션(1)
    ARRAYLIST의 생성자, ARRAYLIST 활용, STACK 클래스, SET, HASHSET, QUEUE
    데이터담기, add 예제, indexof 메소드, to Array 예제, 제거 메소드, Stack, Set 기능, Hash Set, Linked List
  • 18.39분 자바 컬렉션(2)
    QUEUE, LINKEDLIST, MAP, HASHMAP, HASHMAP 활용, TREEMAP, PROPERTIES
    데이터추가, 메소드 타입, 데이터꺼내기, 데이터삭제, QUEUE, Map, Hash Map, Tree Map, Properties, Properties예제
  • 19.44분 자바 유틸 패키지
    JAVA.UTIL, DATE와 CALENDAR, COLLECTIONS, ARRAYS, RANDOM, STRINGTOKENIZER, PROPERTIES, BIGDECIMAL
    자바유틸 API, get/set time메소드, Calender 상수, Roll메소드, Arrays클래스 메소드, Stringtokenizer 예제, Bigdecimal, Runnable
  • 20.37분 THREAD
    THREAD, RUNNABLE 인터페이스, THREAD 클래스, THREAD 클래스의 생성자, SLEEP(), THREAD의 주요 메소드
    시작화면, Runnable thread, Name thread, Daemon thread, Synchronized, RunSync

강의목록 다운로드                        1:1 강의 질문&답변






도움이 필요하신가요?
💬
알지오 학습·수강 도우미
운영진이 확인한 안내를 자세히 보고, 필요하면 바로 상담하세요.
상담 상태 확인 중