본문 바로가기
반응형

Language/Java6

[JAVA] String, StringBuffer, StringBuilder [JAVA] String, StringBuffer, StringBuilder Java에는 문자열을 다루는 클래스로 String, StringBuffer, StringBuilder라는 3가지 클래스가 있습니다. String 객체는 한번 생성되면 할당된 공간이 변하지 않지만, StringBuffer, StringBuilder의 경우 객체의 공간이 부족해지는 경우 버퍼의 크기를 유연하게 늘려줍니다. String은 불변(immutable), StringBuffer, StringBuilder는 가변(mutalbe) 이라고 합니다. StringBuffer - StringBuilder StringBuffer, StringBuilder 클래스는 둘 다 크기가 유연하게 변하는 가변적인 특성을 가지고 있으며, 제공하는 메.. 2021. 7. 6.
[JAVA] 래퍼 클래스 - Wrapper Class [JAVA] 래퍼 클래스 - Wrapper Class 자바의 자료형은 크게 기본 타입 (primitive type) , 참조 타입 (reference type)으로 나눠집니다. 대표적으로 기본 타입은 char, int, float, double, boolean 등이 있고, 참조 타입은 class, interface 등이 있는데, 기본타입의 데이터를 객체로 표현해야하는 경우가 있습니다. 이럴 때 기본 타입(primitive type)을 객체로 다루기 위해서 사용하는 클래스들을 래퍼 클래스(wrapper class) 라고 합니다. 자바는 모든 기본타입은 값을 갖는 객체를 생성할 수 있습니다. 래퍼 클래스로 감싸고 있는 기본 타입 값은 외부에서 변경할 수 없습니다. Wrapper class 종류 기본 타입 (.. 2021. 7. 6.
[JAVA] 문자열 비교 - ==, equals() 차이점 [JAVA] 문자열 비교 - ==, equals() 차이점 Java에서 일반적으로 데이터 타입의 비교는 == 이라는 연산자를 사용하여 비교합니다. String을 비교할 때에는 ==이 아닌 equals() 라는 메소드를 사용하여 비교합니다. String 변수 생성 시 주소할당 String 변수를 생성할 때는 두가지 방법이 있습니다. - 1. 리터럴을 이용한 방식 - 2. new 연산자를 이용한 방식 위 두가지 방식에는 큰 차이점이 있습니다. String을 리터럴로 선언할 경우 "string constant pool" 이라는 영역에 존재하게 됩니다 내부적으로 String의 intern()메서드가 호출하게 되는데 -> intern() 메서드는 주어진 문자열이 string constant pool에 존재하는지 .. 2021. 7. 6.
[Java] Socket Programming - UDP UDP (User Datagram Protocol) : 데이터그램 통신 프로토콜. TCP와 다르게 비연결(Connectionless) 프로토콜. IP 위에 얇은 레이어로 구성되어 있음. 특징 1. 패킷을 보낼 때마다 수신 측의 주소와 로컬 파일 설명자를 함께 전송해야함 2. 비연결성이기 때문에 TCP보다 신뢰성이 떨어짐 3. TCP보다 빠르게 데이터를 주고받을 수 있음 4. TCP에 비해 제어를 할 수 있는 부분이 적음. * UDP를 이용한 프로그래밍을 하려면, 클라이언트/서버 모두 Java.net패키지 안의 DatagramSocket객체를 생성하고 데이터를 주고받기 위해서 DatagramPacket 객체를 이용해야함. DatagramPacket 클래스 : DatagramPacket 클래스로 추상화한 것.. 2019. 4. 30.
[Java] InputStream, OutputStream 개념 데이터 입출력 : 데이터는 사용자로부터 키보드, 마우스 등을 통해 입력 될 수 있고, 파일 또는 네트워크를 통해 입력될 수 있음. 모니터, 파일 등으로도 출력할 수도 있음. 자바에서 데이터는 Stream을 통해 입출력됨. *Stream은 단일 방향으로 연속적으로 흘러가는 것을 의미, 데이터는 출발지에서 나와 도착지로 흘러간다는 개념 프로그램이 출발지/도착지인지에 따라 스트림의 종류가 결정됨. 데이터를 입력 받을 때 - InputStream 데이터를 출력 할 때 - OutputStream *프로그램이 네트워크상의 다른 프로그램과 데이터를 교환하기 위해서는 양쪽 모두 입력 스트림과 출력스트림이 따로 필요함. 스트림은 단방향 통신을 한다는 특징이 있으므로, 하나의 스트림으로 입출력을 동시에 할 수 없기 때문에.. 2019. 4. 30.
[Java] UUID 사용법 UUID 사용법 UUID 이란? (Universally Unique IDentifier) : 범용 고유 식별자 - 중복되지 않는 고유한 키 값 네트워크에서 개체를 식별하고 구별하기 위해 개발 주체가 스스로 이름을 짓도록 하고 고유성을 충족할 수 있는 방법으로 나온 국제기구 표준 * 고유성을 완벽하게 보장할 수 없지만 실제 사용시 중복될 가능성이 거의 없음. 형식 : 16 옥텟(128비트)의 수로 32개의 16진수로 표현 - 36개의 문자로 이루어짐 8 - 4 - 4 - 4 - 12 EX) 2bb7be1f - 651d - 835e - ad5c - 5ae2e96e1b3d 사용방법 : 같은 경로에 동일한 이름의 파일을 업로드 할 때 주로 사용 123456789101112131415import java.util.. 2019. 1. 16.
반응형