ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 기본API(Application Programming Interface)
    개발/자바JAVA 2024. 2. 2. 16:59

    ▶API?(==라이브러리)

        응용 프로그램 프로그래밍 인터페이스. 프로그래밍에서, 프로그램을 작성하기 위한 일련의 부(Sub) 프로그램, 프로토콜 등을 정의하여 상호 작용을 하기 위한 인터페이스

     

    응??

       한마디로 작업하기 편하라고 대단한 분들이 미리 만들어 놓은 코드들의 모임임.

     

    API ?? 라이브러리??

    라이브러리 =A + B .java = .class    즉... 코드 그 자체임.

     

    API =사용법을 정리해 놓은 개발 문서

     

    뭐 둘다 도긴개긴 똑같은 놈들이다...

     

    https://docs.oracle.com/en/java/javase/11/docs/api/index.html

     

    Overview (Java SE 11 & JDK 11 )

    This document is divided into two sections: Java SE The Java Platform, Standard Edition (Java SE) APIs define the core Java platform for general-purpose computing. These APIs are in modules whose names start with java. JDK The Java Development Kit (JDK) AP

    docs.oracle.com

     

     

    -------------------그럼 어떤 것들이 있나 함 보자.-------------------------

     

    ▶Math 클래스(수학관련) 에 제공하고 있는 기능들

        import java.lang.*;

        > 생략 가능, 보이진 않지만 항상 java.lang 패키지의 모든 클래스들은 import되어 있음.

     

         - 수학과 관련된 기능들을 모아둔 클래스

         - java.lang 이라는 패키지에 존재함

         -  모든 필드가 다 상수 필드이고, 모든 메소드가 다 static 메소드임 

             모든게 다 Math. 으로 바로 접근 가능함!! (객체 생성 필요 없음)

             > Math 클래스의 생성자가 private 임(객체 생성을 애초에 막아둠)

             > 이는 싱글톤 패턴 임

     

        * 싱글톤패턴

       자바 코드를 작성하는 방법 중 하나(디자인패턴 종류 중 하나)

       프로그램 시작과 동시에 메모리의 Static 영역에 올려두고 주소값을 공유해가면서 두고두고 쓰겠다는 뜻.

       > 생성자의 접근제한자는 private, 모든 필드, 메서드는 static 이여야만 함.

     

    1. 필드

     

      ● 파이(원주율) :  Math 클래스 내에 상수필드로 정의되어있음.

     

     

    2. 메소드

        올림 > Math.ceil(double) : 올림처리 결과값이 double 형으로 나옴.

     

      ● 반올림  > math.round(doublie) 

     

      ● 내림(버림) > Math.floor(double)

     

      ● 절대값 >  Math.abs(int / double / long / float) 

     

    double num1 = 4.359;
    		System.out.println("올림 : " + Math.ceil(num1));
    		
    		
    		System.out.println("반올림 : " + Math.round(num1));
    		
    		System.out.println("내림(버림) : " + Math.floor(num1));
    		
    		int num2 = -10;
    		System.out.println("절대값 : " + Math.abs(num2));

     

     

     

      ●  최소값 > Math.min(int, int) : int(반환값)

     

      ●   최대값 > Math.max(int, int) : int(반환값)

     

      ●   제곱근(루트) > Math.sqrt(double)

     

      ●   제곱 > Math.pow(double, double) : double(반환값)

       (2의 3승)

     

      ●   랜덤값 > Math.random( ) : double (0.0~0.9999...)

    double num1 = 4.359;
    		System.out.println("올림 : " + Math.ceil(num1));
    		
    		
    		System.out.println("반올림 : " + Math.round(num1));
    		
    		System.out.println("내림(버림) : " + Math.floor(num1));
    		
    		int num2 = -10;
    		System.out.println("절대값 : " + Math.abs(num2));
    		
    		
    		System.out.println("최소값 : " + Math.min(5, 10));
    		
    		System.out.println("최대값 : " + Math.max(5, 10));
    		
    		
    		System.out.println("제곱근(루트) : " + Math.sqrt(4));
    		
    		System.out.println("제곱 : " + Math.pow(2, 3));
    		
    		System.out.println("랜덤값 : " + Math.random());

     

     

     

     

     

     

     

    '개발 > 자바JAVA' 카테고리의 다른 글

    String관련 API  (1) 2024.02.11
    예외 처리(Exception)  (0) 2024.02.05
    추상클래스(Abstract Class)  (0) 2024.02.02
    다형성(Polymorphism)  (1) 2024.01.31
    상속(Inherit) / 오버라이딩(Overriding)  (1) 2024.01.30
Designed by Tistory.