ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 7주차 과제: 패키지 #7
    JAVA 기본 2021. 2. 23. 15:03
    728x90

    목표

    자바의 패키지에 대해 학습하세요.

    학습할 것 (필수)

    • package 키워드
    • import 키워드
    • 클래스패스
    • CLASSPATH 환경변수
    • -classpath 옵션
    • 접근지시자

    package 키워드

    여러개의 클래스가 동일한 이름을 가졌을때 구분하는방법으로 파일로 나눠서 구분한다.

    혹은 서로 관련있는 클래스와 인터페이스를 한곳에 묶어서 관리한다

    패키지 = 디렉터리 = 파일

     

    import 키워드

    다른곳에 있는 패키지를 가져온다,

     

    class path

    경로 지정

    클래스가 위치하는 경로를 지정해서 자바가 원하는 클래스를 로드 할 수 있게 하는것

    소스코드를 컴파일 하면 소스코드만 생성되는 것이 아니라 안에있는 클래스 파일도 생성된다.

     

    classpath 를 지정하기 위한 두 가지 방법이 있다.

    • CLASSPATH 환경변수 사용
    • java runtime 에 -classpath 옵션 사용

    CLASSPATH 환경변수 사용

    컴퓨터 시스템 변수 설정을 통해 지정할 수 있다.
    JVM이 시작될 때 JVM의 클래스 로더는 이 환경 변수를 호출한다. 그래서 환경 변수에 설정되어 있는 디렉토리가 호출되면 그 디렉토리에 있는 클래스들을 먼저 JVM에 로드한다. 그러므로 CLASSPATH 환경 변수에는 필스 클래스들이 위치한 디렉토리를 등록하도록 한다.

    컴퓨터 시스템 변수 설정을 통해 지정할 수 있다.

     

    -classpath옵션

    컴파일러가 컴파일 하기 위해서 필요로 하는 참조할 클래스 파일들을 찾기 위해서 컴파일시 파일 경로를 지정해주는
    옵션

    java 명령 실행 시 옵션으로 클래스패스를 지정할 수 있습니다.

    또한 CLASSPATH 환경 변수 설정 후 실행 하였는데 -classpath 옵션이 우선 순위가 높은 것을 볼 수 있습니다.

     

     

    접근지시자

    누가 이것을 사용할지 권한의 차이를 두는 것

    ㄴ왜? 공통적인 부분을 private해서 사용자가 의도하지 않은 방법으로 클래스 상태를 변경하지 못하게 만듬

    자바에서는 다음과 같은 네 가지의 접근 제어자를 제공합니다.

     

    1. private

    class안에서만 사용간으

    2. public

    어디에서나 사용가능

    3. default

    자식에서 사용가능 

    but, 패키지 안에서만 사용가능

    4. protected

    자식에서 사용가능

    but, 다른 패키지의 상속후에도 사용가능

     

    FQCN(Full Qualified Class Name)

    클래스가 속한 패키지 명을 모두 포함한 이름을 말한다

     

    빌트인 페키지

    자바에 이미 내장되어있는 클래스자주쓰이는 것으로 java.lang(String, StringBuffer Process, Runtime, Thread Math, StrictMath Exception Throwable, Error Package, Class, ClassLoader Wrapper, System, Stream )

     

    java.util(AbstractCollection, AbstractList, AbstractSequentialList, LinkedList, ArrayList, Vector, Stack, AbstractSet, HashSet, LinkedHashSet, TreeSet, AbstractMap, HashMap, LinkedHashMap, TreeMap, Arrays, BitSet, Calendar, GregorianCalendar, Collection, Date, Dictionary, Hashtable, Properties, EventObject, Locale, Observable, Random, Scanner, StringTokenizer)이있다.

     

    'JAVA 기본' 카테고리의 다른 글

    9주차 과제: 예외 처리 #9  (0) 2021.02.27
    8주자 과제: 인터페이스 #8  (0) 2021.02.24
    6주차 과제: 상속 #6  (0) 2021.02.23
    5주차 과제: 클래스 #5  (0) 2021.02.22
    4주차 과제: 제어문  (0) 2021.02.02

    댓글

Designed by Tistory.