안녕하세요.!!
Java API 클래스 종류와 패딩 개념입니다.
# Java API = 라이브러리 개념으로 자주 사용되는 Class 및 인터페이스 모음
1. Java.util 패키지 클래스 종류
Date : 날짜, 시간 관련 정보 클래스
Calendar : OS 날짜와 시간 관련 클래스
Arrays : 배열 관련 클래스
Objects : 객체 비교, null 체크 관련 클래스
Random : 난수 관련 클래스
2. Java.lang 패키지 클래스 종류
Class : 클래스 메모리로 로딩 시 사용
Object : Java 클래스의 최상위 클래스
System : 데이터 입력 받는 용도, 출력, 자바 가상 기계 종료 등
String : 문자열 저장하고 정보 얻는 용도
Math : 수학 함수 이용
3. Object 클래스
자바에서 최상위 부모 클래스로 모든 자바의 클래스는 Object 클래스의 자식이나 자손 클래스
1> 객체비교 메소드 : Equals()
<문법>
Public equals(Object ob) { ~ }
-> 두 객체가 같으면 true, 다르면 false 리턴
(비교 할 경우 두 객체 타입이 동일해야 한다.)
<예시>
ob_A 객체과 ob_B 객체 비교하기
If(ob_A.equals(ob_B) { ~ }
If(ob_A == ob_B) { ~ }
4. 기타 메소드
- Compare(a,b) : 객체 비교
- Hashcode(object a) : 객체의 해시코드 생성
- Isnull(object a) : 객체가 null 인지 체크
- Nonnull(object a) : 객체가 null 아닌지 체크
- toString() : 객체의 문자 정보 리턴
5. System 클래스
- 운영체제 (OS) 기능을 자바 코드를 통해 사용하기 위해 사용
- 프로그램 종료, 입력, 출력, 메모리 정리, 시간 조회, 환경 변수 정보 조회 등
1> exit() : 프로그램 종료 기능
- 현재 실행 중인 프로세스 강제 종료
System.exit(0); // 정상 종료 = 0 , 비정상 종료 = 0이외의 수
2> currentTimeMilis(), nanoTime() : 시간 관련 메소드
-> 현재 컴퓨터의 시간을 밀리세컨, 나노세컨 단위 (long) 값 리턴
-> 시작 시간과 종료 시간을 선언하여 두 시간의 차이로 프로그램 실행 시간 확인
long startTime1 = System.currentTimeMillis();
long startTime2 = System.nanoTime();
<로직 처리 소요시간 구하기>
long startTime1 = System.currentTimeMillis(); // 시작 시간 조회
~
로직 처리
~
long endTime = System.currentTimeMillis(); // 종료 시간 조회
time = endTime-startTime; // 종료 시간 – 시작 시간
# Java 패딩 (Padding)
16 byte 크기의 블록 암호 알고리즘을 사용하여 16 byte 배수가 아니면
마지막 블록은 16 byte 보다 작으므로 마지막의 빈 부분을 채워주는 방식
1> PKCS#5 패딩 : 8byte 블록의 암호 알고리즘
원문 길이 : N byte
마지막 블록 크기 = 8 – ( N mod 8 )
-> 3바이트가 모자라면 끝에 03 03 03 으로 블록을 채워줌
PKCS7 패딩은 8 byte가 아닌 가변 길이이며, 블록 크기가 1에서 255까지의 값
2> 제로패딩
모자란 부분은 00으로 채워주는 방식
'IT ▶ > Java & Web' 카테고리의 다른 글
JavaScript 기본 개념 정리 (Web, 프론트엔드, 백엔드, jQuery 등) (0) | 2020.08.29 |
---|---|
Java String 문자열 메소드 종류 : charAt(), getBytes(), indexof(), length(), substring() (0) | 2020.08.02 |
Servlet 관련 HTML 입력 태그 (Form, 체크박스, 라디오박스 등) (0) | 2020.07.15 |
[웹 프로그래밍 개념] 서블릿이란? (Servlet 구조 및 처리과정) (0) | 2020.06.17 |
HTML 숫자기호 ① , < > 괄호 코드 추가하기 (0) | 2020.05.27 |