클래스: 13개의 글
| IP, IP 주소 IP는 Internet Protocol의 약자로 기기간 네트워크 통신을 할 때 쓰는 프로토콜입니다. 쉽게 말하면 인터넷 검색이나 게임을 할 때나 온라인 쇼핑을 할 때 컴퓨터 기기 간에 통신하는 방식이죠. 그리고 IP 프로토콜에서 IP 기기의 주소를 나타내는 것이 바로 IP 주소입니다. 흔히 우리가 IP 좀 알려달라고 말할 때 쓰는 IP는 이 IP 주소를 의미합니다. 우체국 배달원이 편지를 배달하고 있습니다. 이 우체국 배달원이 편지를 배달하기 위해 필요한 정보는 당연한 말이지만 배달지 주소입니다. 이 배달지 주소의 정보를 정확히 알고 있어야지 우편을 배달할 수 있죠. IP 주소는 이 배달지 주소의 역할을 합니다. 호스트( 컴퓨터라 보면 됨 )가 보내는 데이터를 정확히 다른 기기에 전..
| 개요(Introduction) Java에서 객체가 어떻게 형성되고 관리되는 지 이해하려면 .java 파일로 작성되었던 소스코드가 어떻게 JVM위로 로딩되는 지 아는 것이 대단히 중요합니다. 왜냐하면 클래스 로딩 때 발생하는 이슈를 해결할 수 있고 코드 상에서 동적으로 클래스를 로딩하는 구문을 이해할 수 있으며 드물지만 자신만의 클래스 로더(User-defined loader)를 만드는 것이 가능하기 때문입니다. | 자바 파일(Java file), 클래스 파일(Class file) 자바 파일은 확장자가 .java 인 파일로서 자바 언어로 소스 코드를 작성할 때 그 내용을 적는 파일을 뜻합니다. 그리고 이 자바 파일을 자바 컴파일러로 컴파일한 파일이 바로 .class 확장자를 가진 클래스 파일입니다. 우..
File 클래스 자바에서는 File 클래스를 통해서 파일과 디렉터리를 다룰 수 있도록 하고 있다. 그래서 File 인스턴스는 파일 일 수도 있고 디렉터리 일 수도 있다. 1. File 클래스 API- 경로와 관련된 File의 멤버변수 멤버변수 설명 static String pathSeparator OS에서 사용하는 경로 구분자. 윈도우";", 유닉스":" static char pathSeparatorChar OS에서 사용하는 경로 구분자. 윈도우';', 유닉스':' static String separator OS에서 사용하는 이름 구분자. 윈도우"\", 유닉스"/" static char separatorChar OS에서 사용하는 이름 구분자. 윈도우'\', 유닉스'/' import java.io.*; c..
클래스 메서드와 인스턴스 메서드 클래스메서드도 클래스변수처럼, 객체를 생성하지 않고도 '클래스이름.메서드이름(매개변수)'와 같은 식으로 호출이 가능하다.클래스는 데이터(변수)와 데이터에 관련된 메서드의 집합이라고 할 수 있다. 같은 클래스 내에 있는 메서드와 멤버변수는 아주 밀접한 관계가 있다.인스턴스메서드는 인스턴스변수와 관련된 작업을 하는, 즉, 메서드의 작업을 수행하는데 인스턴스변수를 필요로 하는 메서드이다. 그래서 인스턴스변수는 인스턴스(객체)를 생성해야만 만들어지므로 인스턴스변수를 사용하는 인스턴스메서드 역시 인스턴스를 생성해야만 호출할 수 있는 것이다. 반면에 메서드 중에서 인스턴스와 관계없는(인스턴스변수나 인스턴스메서드를 사용하지 않는) 메서드를 클래스메서드로 정의한다.cf.) 멤버변수는 인..
클래스멤버와 인스턴스멤버간의 참조와 호출 같은 클래스에 속한 멤버들 간에는 별도의 인스턴스를 생성하지 않고도 서로 참조 또는 호출이 가능하다. 단, 클래스멤버가 인스턴스멤버를 참조 또는 호출하고자 하는 경우에는 인스턴스를 생성해야 한다.그 이유는 인스턴스멤버가 존재하는 시점에 클래스멤버는 항상 존재하지만, 클래스멤버가 존재하는 시점에 인스턴스멤버가 존재할 수도 있고 존재하지 않을 수도 있기 때문이다. class TestClass{void instanceMethod(){} //인스턴스 메서드static void staticMethod(){} // static 메서드void instanceMethod2(){ //인스턴스 메서드instanceMethod();//다른 인스턴스메서드를 호출한다.staticMeth..
객체의 형 변환 Java 기본 유형의 데이터들처럼 객체 참조변수의 경우에도 형 변환(casting)이 이루어진다. 서로 다른 클래스 유형으로부터 나온 객체 참조변수들 간의 대입에는 일정한 규칙이 있다. [JAVA/Java] - [JAVA] 기본 데이터 타입과 변환 1. 객체 형 변환의 개요 Parent parent = new Child(); 위의 대입연산에서 왼쪽 항(Parent)과 오른쪽 항(Child)의 객체 유형이 서로 다른 경우, 두 유형이 서로 상속 관계에 있고 왼쪽 객체(Parent)가 오른쪽 객체(Child)의 상위 클래스인 경우에만 내부적인 형 변환이 일어난다. 즉, 하위 클래스에서 상위클래스 유형으로 할당하는 것은 가능하나 그 반대의 경우에는 강제 형 변환을 해야 한다. 그러나 상위 클래..
StringBuffer 클래스 정리 StringBuffer 클래스는 자바 프로그램 내에서 변하는 문자열을 다룰 때 사용한다. StringBuffer 클래스의 객체는 크기가 동적인데, 객체 생성시 크기를 지정하지 않아도 기본적으로 16개의 문자를 저장할 수 있는 버퍼 공간을 가진다. String 클래스의 객체는 한 번 생성되면 그 내용이 변하지 않는 반면에, StringBuffer 클래스의 객체는 한 번 생성된 후에도 계속하여 저장하고 있는 문자열의 내용을 변경할 수 있다. 그러므로, StringBuffer 클래스의 메소드는 문자열 처리 후의 결과를 원래의 StringBuffer 객체에 반영하고, 메소드 리턴 타입은 void 이다. * StringBuffer 클래스 생성자 StringBuffer 클래스 생..
Object 클래스 정리 1. Java.lang 패키지 java.lang은 자바 프로그램에서 가장 많이 사용되는 패키지로서 자바 프로그램내에 'import' 문을 사용하지 않아도 자동으로 포함된다. 그만큼 자바 프로그램의 기본이 되는 클래스들과 인터페이스들이 포함되어 있다. 다음은 java.lang 패키지의 클래스 구조도이다. 물론 java.lang 패키지에는 더 많은 클래스들이 있다. 더 많은 클래스는 여기서 확인하자. JAVA API DOC : Java.lang Object 클래스는 java.lang 패키지 내의 최상위 클래스이며, String 클래스는 변하지 않는 문자열을 다룰 때, StringBuffer 클래스는 내용이 계속 변하는 문자열을 다룰 때 사용될 수 있다. 2. Object 클래스 ja..
DecimalFormat 클래스 NumberFormat 클래스와는 달리, DecimalFormat 클래스는 new 연산자를 사용하여 객체를 생성한다. DecimalFormat 클래스는 format 메소드를 사용하여 특정 패턴으로 값을 포맷할 수 있다. (반환 값 String) 지정할 수 있는 패턴 형식은 '0' 과 '#'을 사용 하여 지정한다. 예를 들어, '0.###', '000.###', '00.#' 등으로 패턴을 지정할 수 잇다. '0' 은 해당 자리수는 값이 최소한으로 있어야 되며, #은 최대한 해당 소수점 자리수 까지(반올림하여) 보여준다. 예를 들어, 78.53981633 일 경우 '0.###' : 78.54 (78.540 이므로 0은 출력되지 않는다.)'000.##' : 078.54 '00...
NumberFormat 클래스 NumberFormat 클래스는 수에 대한 포괄적인 포맷 기능을 제공한다. NumberFormat 클래스는 정적 메소드이므로 new 연산자를 사용하여 객체를 호출하지 않는다. static NumberFormat getCurrencyInstance()현재 지역의 화폐 양식을 나타내는 NumberFormat 객체를 반환한다. static NumberFormat getPercentInstance()현재 지역의 백분율 양식을 나타내는 NumberFormat 객체를 반환한다. getCurrencyInstance() 메소드는 화폐 값을 편집하는 format 객체를 반환하고, getPercentInstance() 메소드는 백분율을 편집하는 format 객체를 반환한다. 숫자는 forma..