2017. 7. 2. 21:44
자바 패키지 import C. Java2017. 7. 2. 21:44
패키지(Package)
- 자바에서는 같은 종류의 클래스를 여러개 묶어서 디렉토리에 저장해 두고 사용하는데
이러한 클래스의 묶음음 패키지라고 한다.
- 패키지 이름 형태: 회사_인터넷_주소.패키지_이름.클래스_이름
- 패키지 이름 형태: 회사_인터넷_주소.패키지_이름.클래스_이름
ex) C:\Java6\JRE6\lib\rt.jar (자바에서 사용하는 클래스들이 압축된 파일)를 열어보면
그안에 java/LANG안에 String.class가 저장되어있다. (그외에도 여러가지 클래스들이 있다.)
import
- String name; 은 원칙적으로는 java.lang.String name; 으로 기술해야한다.
- String name; 은 원칙적으로는 java.lang.String name; 으로 기술해야한다.
하지만 클래스를 사용할때마다 일일이 패키지 이름까지 기술하게 되면 불편하다.
그러나 문두에 import구문을 기술하게 되면 패키지를 일이이 기술하지 않아도 된다.
ex) import java.lang.*; 또는 import java.lang.String; (자세히 기술하는것이 좋다.)
class....
String naem;
.....
.....
ps. java.lang는 java에서 자동으로 기술(포함)되기 때문에 선언하지 않아도 쓸수 있다.
java.util.*; -> 이것처럼 자동으로 기술되지 않은것은 사용자가 기술해줘야한다.
그래야 Random()처럼 그안에 포함된 클래스를 사용할수 있다.
ex)-------------------------------------------------------------
import java.util.*;
public class RandomTest
{
public static void main(String[] args)
{
Random r = new Random();
for(int i=0; i<10; i++)
{
System.out.println("0~100사이의 임의 숫자는" + r.nextInt(100));
}
}
Random r = new Random();
for(int i=0; i<10; i++)
{
System.out.println("0~100사이의 임의 숫자는" + r.nextInt(100));
}
}
}
ps. 앞에서 클래스Path를 정해주었는데 클래스 파일이 위치한 경로명을 지정해주어야
import문을 추가해도 에러가 나지 않는다.
import문을 추가해도 에러가 나지 않는다.
package
Jar 파일 만들기
1. 소스(.java) 와 클래스(.class) 를 따로 만들어준다.(class 파일을 jar로 묶기위해..)
* 소스코드 위치 : c:\Javawork\source
* 클래스코드 위치 : c:\Javawork\classes
커멘드창에서 소스가 있는 위치로 간다.
-d 옵션을 주어 컴파일 한다. -d 옵션은 만들어질 클래스 파일이 위치할곳을 지정한다.
ex) javac -d c:\Javawork\classes *.java
2. jar 파일 만들기 (Jar파일은 pkzip를 사용하는 압축파일 형식입니다.)
* main()메소드가 있는 클래스파일 : MainJar.class
* 만들어질 실행 jar파일 이름 : Jartest.jar
* 클래스코드 위치 : c:\Javawork\classes
커맨드 창에서
cd Myproject\classes(엔터) -> 클래스 파일이 있는 폴더로 간다.
manifest.txt라는 텍스트 파일을 만든다.
안에 내용은 -> Main-Class: Abc
-> 뒤에 .class 를 붙이지 않는다. 그리고 꼭 엔터를 한번 눌러주고 저장한다.
마지막으로 jar -cvmf manifest.txt app1.jar *.class(엔터)
이렇게 하면 c:\>Myproject\classes 폴더에 app1.jar 파일이 만들어지고
더블클릭으로 바로 실행가능하다.
'C. Java' 카테고리의 다른 글
| java 자바 레퍼런스 형변환 instanceof 알아보기 (0) | 2017.07.02 |
|---|---|
| java 자바 문자열 관련 클래스 (0) | 2017.07.02 |
| 익명 중첩 클래스 (0) | 2017.07.02 |
| 지역 중첩 클래스 (0) | 2017.07.02 |
| 정적 중첩 클래스 (0) | 2017.07.02 |
