오늘은 자바 API에 대해서 알아본다!
자바에서 제공하고 있는 명령어들이 있다. 이를 Java API라고 한다.
JDK(Java SE)는 이러한 API들을 제공하고 있다.
이 API를 이용해서 자바 Application을 만들 수 있다.
java.text, java.sql, java.util, java.math, java.lang 등 자바를 가지고 개발을 하다 보면 한번쯤 본적이 있을 것이다.
이런 패키지들도 Java에서 제공하는 API 중의 하나라고 할 수 있다.
toString(), equals() 등의 함수는 위의 API 에서 제공하는 클래스의 기능 중 하나로 재정의하여 사용할 수 있다.
자바 API 문서를 통해 이러한 API의 목록과 사용법을 확인할수 있다.
사용하고자 하는 버전을 붙여 구글링 하면 문서를 확인할 수 있다.
JAVA API 7 -> https://docs.oracle.com/javase/7/docs/api/
JAVA API 11 -> https://docs.oracle.com/en/java/javase/11/docs/api/index.html
예를 들어 위의 String 클래스에 제공되는 기능들을 사용해보자
String str = "Hello my Name is Bob";
System.out.println(str.charAt(6)); // 6번 인덱스의 문자
System.out.println(str.equals("Hello my Name is Bob")); // 문자열간 비교
System.out.println(str.indexOf("Bob"));
System.out.println(str.indexOf("B"));
System.out.println(str.substring(17)); // 17번 인덱스 부터 끝까지 잘라냄
System.out.println(str.substring(6,13)); // 6번 인덱스 부터 12번 인덱스까지 가져옴
System.out.println(str.toLowerCase()); // 소문자로 변경
System.out.println(str.toUpperCase()); // 대문자로 변경
System.out.println(str.length());
System.out.println(str.startsWith("Hello")); //Hello로 시작하니?
System.out.println(str.endsWith("Bob")); //Bob으로 끝나니?
System.out.println(str.replace("Bob","Alice")); // Bob을 Alice로 치환
System.out.println(str.replaceAll("Name","NickName")); // Name을 NickName으로 치환
System.out.println(str.toString());
결과이렇게 문서를 통해 제공되는 기능을 알고 쓸 줄 안다면, 한층 개발이 더 편리해지겠쥬 ^0^!!
class Fruit {
String name;
String color;
public Fruit(String name, String color) {
this.name = name;
this.color = color;
}
@Override
public String toString() {
return "toString 재정의";
}
}
// 위와 같이 toString()함수를 재정의 해준 후,
// toString()이 사용되도록 println을 사용해보자!
Fruit f1 = new Fruit("사과", "빨강");
System.out.println(f1);
출력 결과 : toString 재정의
// getProperty() 메소드 사용 -> 사용자 환경설정 값들을 가져오는 기능
//자바 버전
System.out.println(System.getProperty("java.version"));
//JDK 경로
System.out.println(System.getProperty("java.home"));
//OS
System.out.println(System.getProperty("file.separator"));
//파일 구분자
System.out.println(System.getProperty("user.name"));
//사용자 홈디렉토리
System.out.println(System.getProperty("user.home"));
//현재 워크스페이스 디렉토리 위치
System.out.println(System.getProperty("user.dir"));
//for문으로 시스템 환경변수 모든 리스트 가져오기
for(String var : System.getenv().keySet()){
System.out.println(var + " = "+System.getenv(var));
}
결과