본문 바로가기

old drawer/Java

[Java] String -> int /// int -> String String : 문자열 ["123"] int : 숫자 [ 123 ] 입니다. 그런데 String을 int로 바꾸려고 합니다. 뭐 간단하죠~ String str = "123"; //string "123"선언 System.out.println((int)str); //"123"을 123으로 바꾼다. !!! 그런데 오류가 납니다. System.out.println((int)str); 왜 오류가 날까요? 메모리 차이때문입니다. 메모리 차이때문에 손실이 발생할수 있기때문이죠.(자세한건 네이버ㅋ) String 은 (문자수)byte String = char[] char = 1byte String 1*문자수 = 문자수 정확하지 않을수있습니다. 아시는분은 댓글로.. int 는 4byte 그럼 어떻게 할까요? System... 더보기
[Java] 자료형 자료형 키워드 크기 기본값 표현 범위 논리형 boolean 1 bit False True or False 문자형 char 2 byte \u0000 0 ~ 65,535 정수형 byte 1 byte 0 -128 ~ 127 short 2 byte 0 -32,768 ~ 32,767 int 4 byte 0 -2,147,483,648 ~ 2,146,483,647 long 8 byte 0 -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 실수형 float 4 byte 0.0 -3.4E38 ~ +3.4E38 double 8 byte 0.0 -1.7E308 ~ +1.7E308 더보기
[Java] enum 사용법 Simple enum. The ; after the last element is optional, when this is the end of enum definition. public enum Color { WHITE, BLACK, RED, YELLOW, BLUE; //; is optional }Enum embedded inside a class. Outside the enclosing class, elements are referenced as Outter.Color.RED, Outter.Color.BLUE, etc. public class Outter { public enum Color { WHITE, BLACK, RED, YELLOW, BLUE } }Enum that overrides toStrin.. 더보기
[Java] Thread.interrupt() 사용법 자바에서 스레드를 종료할 때는 상태변수(state variable)를 사용해 run() 메소드를 탈출하는 방식을 사용하는데, 이 것을 "state based" singnaling이라 부른다. 기존에 제공되던 Thread.stop(), Thread.suspend(), Thread.resume()은 더 이상 사용할 수 없다. (참고: Why are Thread.stop, Thread.suspend and Thread.resume Deprecated?) 직접 상태변수를 선언하고 그 것을 이용한다. 자기 쓰레드의 종료 상태를 지정할 수 있는 상태변수(r/w enabled)를 Runnable 객체의 인스턴스 변수로 정의하고, run() 메소드 내에서 주기적으로 종료 상태를 검사해서 메소드를 탈출(리턴)한다. 상태.. 더보기
[Java] Runable과 Thread의 차이점 Thread의 사용방법 : http://scarlett.tistory.com/entry/Thread-2Thread의-사용방법 Thread와 Thread의 상속 : http://scarlett.tistory.com/entry/Thread-3Thread와-Thread의-상속 간단한 Thread 검색 프로그램 : http://scarlett.tistory.com/entry/Thread-4간단한-Thread-검색-프로그램 쓰레드를 구현하는 방법은 Thread클래스를 상속받는 방법과 Runnable인터페이스를 구현하는 방법, 모두 2가지가 있다. 이 두 가지 방법 중 어느 쪽을 사용해도 별 차이는 없지만 Thread클래스를 상속받으면 다른 클래스를 상속받을 수 없기 때문에, Runnable인터페이스를 구현하는 방.. 더보기
[Java] Painting in AWT and Swing Painting in AWT and Swing Good Painting Code Is the Key to App Performance By Amy Fowler In a graphical system, a windowing toolkit is usually responsible for providing a framework to make it relatively painless for a graphical user interface (GUI) to render the right bits to the screen at the right time. Both the AWT (abstract windowing toolkit) and Swing provide such a framework. But the APIs .. 더보기
[Java] AWT와 Swing의 차이점 1. AWT와 Swing의 차이 1> Swing의 등장배경 AWT는 사용하기에는 쉽지만 어느정도 한계가 있다. 가령 버튼에 롤오버 이미지를 사용한다던지 풍선말 기능 등 실제로 많이 사용하는 기능들을 AWT로 구현하기란 쉽지가 않다. 또한 운영체제마다 매우 다른 GUI 구현 방식 때문에 AWT의 컴포넌트를 사용함에 있어서 많은 버그가 발견되고 있다. 즉 AWT는 모든 컴포넌트를 운영체제의 자원을 사용한다. 따라서 각기 다른 운영체제에서는 문제가 발생할 수 밖에 없다. 이런 이유 때문에 나온 것이 Swing 이다. Swing은 Top-Level 컨테이너만을 운영체제의 자원을 사용할 뿐 그 하부에 있는 모든 컴포넌트는 직접 자바 코드에 의해 그리는 방식을 가지고 있다. 1> AWT와 Swing의 차이 AWT .. 더보기
Java에서 implements Serializable(객체 직렬화)란? 객체 직렬화란 객체의 내용을 바이트 단위로 변환하여 파일 또는 네트워크를 통해서 송수신(스트림)이 가능하게 만들어 주는 것을 말합니다. 여기서 객체란 멤버변수의 메모리만으로 구성된 것을 말하구요. 따라서 객체 직렬화에서 메서드와 생성자는 제외된다는 것을 잊지 마세요! 이렇게 객체를 직렬화 함으로써 얻을 수 있는 장점은 객체 자체의 내용을 입출력 형식에 구애 받지 않고객체를 파일에 저장함으로써 영속성을 제공할 수 있고, 객체 자체를 네트워크를 통하여 손쉽게 교환할 수있게 됩니다. 객체 직렬화는 자바 1.1 이후에 도입이 되었는데 그 이유는 RMI와 Bean 때문이었습니다. RMI는 원격객체통신을 지원해야 하기 때문에 객체가 그대로 이동할 수 있어야 합니다. 따라서 이를 지원하기 위해서 객체직렬화가 필수이구.. 더보기
Java Platform, Standard Edition 6 API Specification http://download.oracle.com/javase/6/docs/api/index.html 더보기
java 파일 입출력 1. 접두.접미어만 알면 반은 먹고 들어간다!! 스트림 읽기 쓰기 바이트 InputStream OutputStream 문 자 Reader Writer 파일 'File-' / 버퍼 'Buffered-' / 자료형, String Class 'Data-' ex 1) 파일을 문자 단위로 읽기 위한 클래스는? 파일 File, 문자 읽기 Reader → FileReader ex 2) 바이트 데이터를 문자 단위로 저장 하고 싶다면? 바이트 쓰기 OutputStream -> 문자 쓰기 Writer → OutputStreamWriter 2. 클래스 구조 및 설명(byte stream) 모든 상위 클래스의 메서드는 하위 클래스에 상속 된다! 는 Pass!! [바이트 입력 스트림] InputStream └ FileInput.. 더보기