본문 바로가기
Java/Java 활용 개념 정리

[Java] 클래스 부분 최종 정리

by Dev dreamer 2023. 2. 3.

💡 1. class 의 정의


class 

DataType 측면 : 새로운 자료형을 만드는(설계하는) 도구 = 모델링 도구

OOP(객체지향)측명 : 객체의 상태 정보와 행위 정보를 추출하여 캡슐화 하는 도구(구조화 및 은닉화)

 

Model : class 를 Model 이라고도 부른다. (역할이 정해지므로)

 

🔍우리가 만드는 Model의 종류(3가지는 거의 대부분 만들게 되어 있다.)

1. DTO(Data Transfer Object): 데이터 구조, 데이터를 담는 역할, 이동하기 위해서 데이터를 담음

 - VO(Value Object) : 객체를 담아서 하나의 값(덩어리)으로 취급한다는 의미다.

 

2. DAO(Data Access Object) : 데이터를 처리하는 역할( 비지니스 로직), 데이터베이스와 CRUD하는 역할

데이터는 일반적으로 데이터 베이스에 있는데 이 데이터에 Access 해서 CRUD 하는 역할을 해주는 클래스이다.

이러한 DAO 클래스를 '비지니스 로직'을 가지고 있는 객체 라고도 한다.

 

3. Utility(Helper Object) : 도움을 주는 기능을 제공하는 역할(날짜, 시간, 통화, 인코딩 등)

프로그램을 짜다보면 도움을 주는 기능을 별도로 만들때 주로 사용하며

Utility 클래스 , 헬퍼 클래스, 퍼사드(다용도실의미) 클래스 등등 부른다.

 

 

🔍 우리가 앞으로 사용하게 될 class 들 : API(Application Programming Interface)

 

1. Java에서 제공해주는 class 들

     -String, System, Integer, ArrayList, Map 등 ➡ 자바에서 기본적으로 제공해주는 클래스들

 

2. 만들어 사용하는 class 들 (DTO, DAO, Utility)

 

3. 1,2번이 아닌 다른 사람이 만들어서 제공해주는 class 들

   -Gson, Jsoup, POI, iText 등

예를들어 Json 데이터 핸들링, 네트워크 연결, 특정 웹사이트 데이터를 뽑아낸다 던가 여러가지 기능을 하는 클래스들을 사용한다.

 

인터넷에서 다운을 받는다. 자바는 mvnrepository.com 에서 이용이 가능하다.

Maven Repository: Search/Browse/Explore (mvnrepository.com)

 

 

💡 코드로 class 정리해보기.


 

기본적으로 java 를 깔게 되면 자체적으로 제공되는 API 양도 엄청나다.

 

JRE SystemLibrary에서 java.base 에서 java.lang 만 봐도 엄청나게 많은 기능들의 class가 있는것을 확인할 수 있다.

 

 

🔍 String 클래스 알아보기

 

기존 Java에서 만들어준 String 클래스를 이용해서

String 을 선언하면 str이라는 변수가 생성된 String 객체의 위치 정보를  가지고 있을 것이다.

 

여기에서 String 클래스에 있는 상태 정보 뿐만아니라

 

행위 정보(Method)를 알아야 String의 상태를 조작할 수 있을 것이다.

 

어 그런데 String 클래스를 이용하는데 import를 안해줘도 되나요?😮

원래 String 이나 System 클래스 등을 이용할 때 앞에 가져온 클래스 위치를 기술 해 줘야 한다.

하지만 매번 자주쓰이는 String 과 System 을 이용할 때 마다 이렇게 위치정보를 쓰는건 불편할 것이다.

그래서

java.lang 패키지를 import 해줘야 한다! 하지만! 

워낙 자주 쓰이는 String 과 System 등을 제외한 여러가지 기능을 포함한 java.lang 은 default package 라고 생략되어있다.

 

🔍 Utility 클래스

 

1부터 넣은 10까지 더한 값을 합해주는 클래스를 만들 수 있다.

 

 

🔍 다른회사에서 만들어 놓은 class 들

Maven Repository: Search/Browse/Explore (mvnrepository.com)

 

 

G son 을 쓴다고 해보자.

 

구글에서 만든 API 이다.

 

여기서 가장 많이 다운 받은 버전을 들어가면

여기서 Jar 파일을 다운받으면 된다.

나중에 spring 프레임 워크를 사용하면 maven 이나 gradle은 depency 를 사용하는데 그때는

글을 통해서만 이용이 가능하다.

 

이 파일을 작업공간이 모여있는 폴더 내에 들어가서

lib 폴더를 만들어서 넣어둔다.

 

Java Build Path 에 Libraries 에 classpath를 클릭하고 Add External JARs 를 클릭해준다.

원하는 곳에 Gson을 임포트하고 해당 클래스를 사용할 수 있다.

 

기존에 있단 BookVO 생성자를 이용해서 객체를 만들어서 정보를 저장하고

그것을 Gson 이라는 객체의 toJson 이라는 메서드에 넣어서 json String 변수에 저장해서 출력하면

객체를 Json 이라는 형태로 만들어 줬다.

 

Json 은 객체를 문자열의 형태로 만든 문자열 형태이다.

 

key : value key : value key value 형태로 이루어져 있는 형태이다. 주로 전송할 때 많이 쓰인다.

 

 

 

Java 관련 개념을 알려주실 때 그 내부 동작이 어떻게 구현되는지 자세하게 알수 있는 강의입니다.

출처: Java TPC (생각하고, 표현하고, 코딩하고) 대시보드 - 인프런 | 강의 (inflearn.com)

댓글