일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- array
- java
- 제어자
- 에러
- 람다식
- Connection
- JSP
- 예외처리
- 객체지향
- StringBuffer클래스
- Interface
- 메서드
- I/O
- 커넥션 풀
- StringBuffer
- for문
- File입출력
- ToString
- 예외
- try-catch
- 상속
- 객체
- 내장 객체 영역
- 인터페이스
- 입출력
- 다형성
- 배열
- 변수
- 접근제어자
- DB
- Today
- Total
목록Java (59)
ksouth9

DataInputStream과 DataOutputStream FilterInputStream/FilterOutputStream의 자손이다. DataInputStream은 DataInput인터페이스를, DataOutputStream은 DataOutput인터페이스를 각각 구현했다. 때문에, 데이터를 읽고 쓰는데 있어서 8가지 기본 자료형의 단위로 읽고 쓸 수 있다. 각 자료형의 크기가 다르므로, 출력한 데이터를 다시 읽어 올 때는 출력했을 때의 순서를 염두에 두어야 한다. DataInputStream의 생성자와 메서드 메서드/생성자 설명 DataInputStream(InputStream in) 주어진 InputStream 인스턴스를 기반스트림으로 하는 DataInputStream인스턴스를 생성한다. bool..

FilterInputStream과 FilterOutputStream FilterInputStream과 FilterOutputStream은 InputStream/OutputStream의 자손이면서 모든 보조스트림의 조상이다. 보조스트림은 자체적으로 입출력을 수행할 수 없기 때문에 기반스트림이 필요로 한다. FileterInputStream/FilterOutputStream의 모든 메서드는 단순히 기반스트림의 메서드를 그대로 호출할 뿐이다. FileterInputStream/FileterOutputStream자체로는 아무런 일도 하지 않음을 의미한다. FileterInputStream/FileterOutputStream은 상속을 통해 원하는 작업을 수행하도록 읽고 쓰는 메서드를 오버라이딩해야 한다. publ..

InputStream과 OutputStream InputStream과 OutputStream은 모든 바이트기반의 스트림의 조상이다. InputStream 메서드 메서드명 설명 int available() 스트림으로부터 읽어 올 수 있는 데이터의 크기를 반환한다. void close() 스트림을 닫음으로써 사용하고 있던 자원을 반환한다. void mark(int readlimit) 현재위치를 표시해 놓는다. 후에 reset()에 의해서 표시해 놓은 위치로 다시 돌아갈 수 있다. readlimit은 돌아갈 수 있는 byte의 수이다. boolean markSupported() mark()와 reset()을 지원하는지를 알려 준다. mark()와 reset()기능을 지원하는 것은 선택적이므로, mark()와 ..

입출력 I/O I/O란 Input과 Output의 약자로 입출력이라 하며 컴퓨터 내부 또는 외부의 장치와 프로그램간의 데이터를 주고받는 것을 말한다. 예를 들어 키보드로부터 데이터를 입력받는다든가 System.out.println()을 이용해서 화면에 출력한다던가 하는 것이 가장 기본적인 입출력의 예이다. 스트림(Stream) 자바에서 입출력을 수행하려면, 즉 어느 한쪽에서 다른 쪽으로 데이터를 전달하려면, 두 대상을 연결하고 데이터를 전송할 수 있는 무언가가 필요한데 이것을 스트림(Stream)이라고 정의했다. 스트림이란 데이터를 운반하는데 사용되는 연결통로이다. 스트림은 단방향통신만 가능하기 때문에 하나의 스트림으로 입력과 출력을 동시에 처리할 수 없다. 그래서 입력과 출력을 동시에 수행하려면 입력을..

함수형 인터페이스(Functional Interface) 자바의 람다식은 함수형 인터페이스로만 사용이 가능하다. 함수형 인터페이스를 사용하는 이유는 람다식은 함수형 인터페이스로만 접근이 가능하기 때문이다. 인터페이스의 참조변수로 람다식의 메서드를 호출 할 수 있다. 예시 interface MyFunction { public abstract int max(int a, int b); } MyFunction f = new MyFunction { public int max(int a, int b) { return a > b ? a : b; } }; int big = f.max(5, 3)// 익명 객체의 메서드를 호출 MyFunction 인터페이스에 정의된 메서드 max()는 람다식 '(int a, int b) ..

람다식 람다식은 간단히 말해서 메서드를 하나의 '식(expression)'으로 표현한 것이다. 함수를 간략하면서도 명확한 식으로 표현할 수 있게 해준다. 메서드를 람다식으로 표현하면 메서드의 이름과 반환값이 없어지므로, 람다식을 '익명함수'이라고도 한다. 사용방법 람다식은 '익명함수'답게 메서드에서 이름과 반환타입을 제거하고 매개변수 선언부와 몸통 {} 사이에 '->'를 추가한다. (타입 매개변수, ...) -> { 문장들 } '->' 기호는 매개 변수를 이용해서 중괄호 {}를 실행한다는 뜻으로 해석하면 된다. 예시 (iint a, int b) -> { return a > b ? a : b; } 반환값이 있는 메서드의 경우, return문 대신 '식(expression)'으로 대신 할 수 있다. 식의 연..

java.util.StringTokenizer 클래스 StringTokenizer는 긴 문자열을 지정된 구분자(delimiter)를 기준으로 토큰(token)이라는 여러 개의 문자열로 잘라내는 데 사용된다. 예를 들어 "100,200,300,400"이라는 문자열이 있을 때 ','를 구분자로 잘라내면 "100","200","300","400" 이라는 4개의 문자열(토큰)을 얻을 수 있다. String의 split(String regex)이나 Scanner의 useDelimiter(String pattern)를 사용할 수 도 있다. 하지만, 이 두 가지 방법은 정규식 표현(Regular expression)을 사용해야한다. String [] result = "100,200,300,400".split(",")..

java.util.Scanner 클래스 자바에서 화면으로 부터 데이터를 입력받는 기능을 제공하는 클래스이다. Scanner는 화면, 파일, 문자열과 같은 입력소스로부터 문자데이터를 읽을 수 있다. 사용방법 import java.util.Scanner; import를 통해서 java.util 패키지 내에 존재하는 Scanner클래스를 호출한다. Scanner sc = new Scanner(System.in); Scanner 클래스는 반드시 객체를 생성해야만 사용할 수 있다. System.in은 정수형, 실수형과 같은 값을 화면에서 입력 받겠다는 의미이다. import java.util.Scanner; public class ScannerTest { public static void main(String[]..