11일차 학습내용
1. 패키지package 2. API Application Programming Interface 3. java.lang패키지. import 필요없음 4. java.util |
1. 패키지package
: 폴더/ 디렉토리: 서로 관련있는 클래스나 컴파일된 클래스
파일들을 한곳에 묶어 놓은 것
JDK는 개발자에게 많은 클레스 파일들을 패키지 형태로 제공한다.
rt.jdr 압축파일로 제공되며, 내부는 폴더구조로 정리되어 있는 것을 볼 수 있다
1) 클래스명
: 클래스를 지칭할 때 패키지명을 포함하는 경로명을 사용한다.
패키지와 패키지 사이는 점 연선저 사용.
2) 패키지의 필요성
:
3) 패키지 사용
기본적으로 클래스 사용시, 패키지명을 포함한 전체 경로명을 기술해야함.
java.util.Scanner sc = new jave.util.Scanner();
4) import문
import 패키지.. 클래스명;
import java.util.Scanner;
import sc = new Scanner(System. in);
한 패키지 안에 있는 여러 클레스를 사용하고 싶은 경우,
import java.util.*; // util패키지에 있는 모든 클래스 임포트
5) package 만들기
폴더만들고 java파일 상단에
package 패키지명; 기술 해주기.
2. API Application Programming Interface
API 응용프로그램간 데이터를 전송하는 방법, 형식 특정 데이터를 달라고 요구하는 데 필요한 형식이 있고, 서버측에서도 데이터를 줄 때 누구에게 허용할지, 얼마만큼을 공개할지 비용과 절차적 제한을 두게 되는데 이러한 형식이 있을거이지 |
자바에서 제공하는 기본 패키지를 Java API라고 한다.
1) API 문서
Java SE
Java EE
2) API
java.awt : GUI (그래픽 유저 인터페이스) 잘 안씀 웹으로 바로 띄어서 하니까 우린 안써
java.beans : == 컴포넌트(부품) 클래스
java.io : Input/Output(I/O) : 입출력 관련. File *
java.lang : 기본패키지 *
java.math : 기본연산이외에 더 다양한 연산이 필요할때 사용하는패키지
java.net : 네트워크 관련
java.nio : new I/O
java.security : 보안관련
java.sql : 데이터베이스 (*나중에 웹에서)
java.text : 글자관련
java.util : 배열대신 사용할 것. 날짜, 벡터, 해시맵, 데이터저장 등 *
javax.~ : 서포트하는 패키지
그 외
구글 API
네이버 API
카카오 API
공공데이터 포털
3. java.lang패키지. import 필요없음
1) Object 클래스 : 최상위 클래스
11개 메서드
Api01 출력해보기
.getClass()
.hashCode()
.toString 오버라이드
.equals()
* == 연산자 : 기본형이면 값비교, 참조형은 주소비교 (오버라이딩X)
boolean equals(Object obj) : 기본적으로 주소비교
사용자에 의해 오버라이딩해서 사용가능
ex) String 클래스의 equals()
2) String 클래스 : 문자열 클래스
스트링 리터널은 자바 컴파일러에 의해 모두 String 객체로 처리
1) 생성자
String()
String(String original): 문자열에 넣으면서 객체 생성
String(char[] value) : char배열의 문자들을 String객체로 생성
2) 스트링리터럴 new string()
String str = "hello"; 리터럴 방식
String str = new String(); 객체 생성 방식
<Api03
3) 주요메서드
char charAt(int index)
String concat(String str) : 현재 스트링뒤에 str매개변수를 덧붙여
새로운 문자열로 리턴해줌(문자열 연결)
boolean contains(CharSequence s) : 매개변수로 던진값을 포함하는지
boolean equals(String str)
int compareTo(String str) : 사전순비교, 같으면 0, 현재가 먼저 음수,
아니면 양수
int length()
String replace(CharSequence target, CarSequence repl)
: 새로 바뀐 문자열 리턴 (변수에 대입해야 바뀐버전 보존)
String[] split(String regex) : 정규식regex을 구문자로
문자열을 나눠서 배열에 담아 리턴
String subString(int beginIndex) : beginIndex부터 시작하여
이어지는 문자열을 리턴
String toLowerCase()
String toUpperCase()
String trim()
사용해보기
contains
3) StringBuffer 클래스
: 문자열. String과는 다르게 문자열을 저장하는 가변버퍼를 가지고 있다.
저장된 문자열 수정 가능.
4) Wrapper클래스
: Wrapper라는 클래스는 존재하지 않는다.
int, char, double등 8개 기본형을 객체로 다루기 위해
JDK에 만들어진 8개의 클래스를 통칭하여 Wrapper클래스라 함.
기본타입 : byte short int long char float double boolean
Wrapper : Byte Short Integer Long Character Float Double Boolean
#1. 객체 생성
클래스명 변수명 = new 클래스명(값); // int or String
#2. 주요메서드(기본형으로 주는)
float floatValue()
int intValue()
long longValue()
short shortvalue()
static int parseInt(String s)
static String toBinary(int i) : 2진수
static String toHexString(int i) : 16진수
static String toOctalString(int i) : 8진수
static String tiString(int i) : 문자열로
#3. 박싱/ 언박싱
박싱 Integer ten = new Integer(10);
int -----------> Integer
10 <----------- 10
언박싱 int n = ten.inValue();
5) Math 클래스
4. java.util
1) Calendar 클래스
추상클래스 (getinstance메서드로 가져다써야)
년, 월, 일, 요일, 시간, 분, 초, 밀리초 등 get(), set() 메서드 이용
1970.1.1.0.0.0를 기준으로
Calendar.YEAR
Calendar.DAY_OF_MONTH
Calendar.MONTH : 달 (0~11)
Calendar.DAY_OF_WEEK : 요일
Calendar.HOUR
Calendar.AM_PM
Calendar.HOUR_OF_DAY : 24시간 기준
Calendar.MINUTE
Calendar.SECOND
Calendar.MILLISECOND : 1초 == 1000밀리초
* 객체 생성 (X) new말고
Calendar now = Calendar.getInstance();
2) Date 클래스
: 단일 클래스, 객체생성 가능 / 상수가 많고 더 연산이 빠른 캘린더, 상수대문자때문에 많이 안써져
문제
문제풀이 5:34
패키지package
2. API Application Programming Interface
3. java.lang패키지. import 필요없음
4. java.util
'코딩' 카테고리의 다른 글
2022.02.23_13일차 (0) | 2022.02.27 |
---|---|
2022.02.22_12일차_컬렉션 (0) | 2022.02.26 |
2022.02.18_10일차_내부클래스와 익명클래스, 예외처리 (0) | 2022.02.24 |
2022.02.17_9일차_다형성과 추상클래스 (0) | 2022.02.23 |
2022.02.16_8일차_상속과 오버라이딩 (0) | 2022.02.22 |
댓글