자바 api 이용한 설명 부탁드립니다.

자바 api 이용한 설명 부탁드립니다.

작성일 2007.09.27댓글 2건
    게시물 수정 , 삭제는 로그인 필요

공부를 하다보니 개별적인  개념들은 대충 알겠는데...

소스상으로 보니 이해가 잘 안되는 부분들이 있습니다.

답변 해주시면 내공 드리겠습니다.

 

 

import java.io.*;

 

BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

(소스상의 중간 부분들은 다 생략하였습니다. 설명하시는데는 무리가 없으시리라 생각됩니다.)

 

API를 보면

생성자에

BufferedReader(Reader in)

BufferedReader(Reader in, int sz)

이런식으로 들어가는데... 파라미터로 Reader 이런식으로 된소스들 있는데

파라미터로 클래스를 넘긴다는건데.. 이부분이 잘 이해가 되질 않네요...

따라가봐도.. 잘 모르겠고..(인터페이스.. 이런 개념은 알겠는데 잘 못따라가겠네요..)

 

생성자에 파리미터가  Reader in, int sz 이런식인데

왜 new 하고 객체를 생성한건지 잘 모르겠습니다.

 

new InputStreamReader(System.in)

여기에서 System.in도 잘...^^:;

 

잘나온 강의(질문과 연관된)를 링크 해주셔도 되고... 답변을 해주셔도 되고

제가 질문한 부분은 자바의 어떤 개념을 알면 간단하다? 이런식의 답변도 좋습니다.

 

 

마지막으로

클래스타입으로 리턴값을 받는 소스들이 있던데...

클래스타입으로 왜 선언하고 리턴값은 어떤 형태가 되는지 간단하게라도 소스로 설명 해주시면

정말 고맙겠습니다.

 

 

귀찮으시더라도.. 자세한 설명 좀 부탁드립니다.

책은 많이 봤는데.. API이용을 안해서 그런지 이제 부터 열심히 하려는데

힘드네요.. ㅜㅜ

 

 


#자바 api #자바 api 호출 #자바 api 문서 #자바 api 만들기 #자바 api란 #자바 api 호출 예제 #자바 api 데이터 가져오기 #자바 api 보는법 #자바 api 사용법 #자바 api 뜻

profile_image 익명 작성일 -

간절한 질문에 답변을 달아드립니다.

Reader 라는 것은 형(모양, 형태)입니다.

Reader in 이라는 것은 Reader 모양의 빈상자 in 입니다.

in에다가 Reader로 찍어낸 객체를 하나 담을수 있습니다.

Reader 모양의 객체를 찍어낼 때는 앞에 new를 붙입니다.

new Reader(); 라고 하면 Reader 모양의 객체를 찍어낸 것이고

이것을 in에다 넣을 수 있는 것입니다.

 

BufferedReader(Reader in)은

클래스를 넘기는 것이 아니라 Reader의 객체를 in에 담아서 넘길 수 있다는 뜻이고

BufferedReader는 이 in 안에 들은 Reader의 객체를 이용해 BufferedReader의 객체를 만드는 것입니다.

 

System.in 이라는 녀석은 System 이라는 클래스의 스태틱 필드인 in이고 이 녀석의 형은 InputStream 입니다.

키보드로 부터 데이터를 받아오는 스트림을 담고 있는 녀석입니다.

 

그래서, 키보드로 부터 데이터를 받아오는 InputStream 형의 객체를 담고 있는 in을 가지고

InputStreamReader 객체를 만들 수 있는 것입니다.

InputStreamReader는 Reader를 상속했기 때문에 Reader로서 파라미터에 넘겨질 수 있습니다.

이 객체를 통해 다시 편리한 메서드들을 갖고 있는 BufferedReader의 객체를 만들 수 있는 것입니다.

 

정수를 반환하기 위해서는 반환형이 int 이고 문자를 반환하려면 char입니다.

이와같이 객체를 반환할 때도 그 객체의 형을 적어주는 것입니다.

만약 char 배열을 받아서 String을 반환하는 메서드를 만든다면 다음과 같이 할 수 있을 것입니다.

String charToString(char[] in) {

    return new String(in);

}

이것은 char 배열형 객체를 in으로 받아와서 String 객체를 생성하기위한 파라메터로 사용하고

생성된 String의 객체를 반환하는 것입니다.

반환되는 것은 String의 객체이기 때문에

메서드의 앞에 반환형을 String이라고 꼭 써주어야 하는 것입니다.

 

이 때, 반환되는 것은 당연히 String형의 객체이고

이 객체는 String형 변수에만 담을 수 있는 것입니다.

해당 글은 지식스폰서가 활동 기간 (04년~08년 6월 종료)중에 작성한 글 입니다.
  • 지식스폰서가 작성한 답변은 본문 내 자기소개 및 출처란의 실명, 상호명, URL표시를 허용합니다.
  • 출처란에 표시된 정보가 운영원칙에 위배되는 음란성, 불법성, 청소년 유해사이트 등으로 변질된 경우는 허용이 되지 않습니다.
지식스폰서란

profile_image 익명 작성일 -

BufferedReader (Reader in, int sz)

 

BufferReader 는 api 에 보면 버퍼를 이용해서 좀더 효율적으로 스트림으로부터 값을 읽어

 

드린다고 하는데요 여기서 int sz 는 버퍼값을 지정해줄때 쓰는거고

 

Reader in 은 Reader 타입의 객체를 받는다고 하는데

 

Reader 타입의 객체가 뭐가 있나 보면

 

BufferedReader , CharArrayReader , FilterReader , InputStreamReader , PipedReader , StringReader

 

예문에서는 이중에 InputStreamReader 를 쓰는 경우고요

 

객체는 new 로 생성하지 않으면 메모리에 존재하지 않습니다. 그렇기에 new 로 생성한거구요

 

new InputStreamReader(System.in) 하는 부분은

 

API 에서  InpsutStreamReader 의 생성자 부분을 보면

 

InputStreamReader(InputStream in) 이렇게 InputStream 타입을 필요로 하는데

 

inputStream 을 받아서 stream 으로부터 값을 읽어오는거구요

 

System클래스에 in 이라는 놈이 API 에 보면

 

public static final InputStream  in  이렇게 선언이 되어 있네요

 

참고로 in 의 대한 설명은

 

「표준」입력 스트림입니다. 이 스트림은 벌써 열려 있어, 입력 데이터의 공급이 가능합니다. 통상, 이 스트림은 키보드 입력, 또는 호스트 환경이나 유저에 의해 지정되는 그 외의 입력 소스와 일치하고 있습니다.

 

라고 되어 있네요

 

BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

 

즉 이 문장은 표준 입력 스트림인 키보드로부터의 입력을 InputStreamReader 로 읽어들이고 다시

 

BufferedReader 로 버퍼를 통해서 읽어들이는 in 객체를 생성하는 문장이 되겠네요

 

클래스타입으로 리턴값을 받는 소스들이 있던데...

 

-> 이건 어떤 소스들을 말씀하시는건지 ;;       


import java.io.*;
class Test {

 public static void main (String [] args) {
  BufferedReader in = getReader();
 }
 
 public static BufferedReader getReader() {
  BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
     return in;
 }
}

 

대략 이런 모양의 소스를 말하시는건지요

 

아 내가 다시 봐도 참 알아듣기 어렵게 썼네요 ㅡ ㅡ;;;

 

http://pllab.kw.ac.kr/j2seAPI/api/

 

j2se 5.0 api 한글 번역링크이니 한번 들러보세요

자바 api 이용한 설명 부탁드립니다.

... 답변을 해주셔도 되고 제가 질문한 부분은 자바... 자세한 설명부탁드립니다. 책은 많이 봤는데.. API이용을 안해서 그런지 이제 부터 열심히...

자바 API에 대해서 질문 드립니다.

... 자바 API를 완벽하게 이해하고 싶습니다. 아주 쉽게 이용하는 방법좀 갈쳐주세여... 앞으로 이쪽 계통으로... 맨위에는 클래스의 구성과 설명 그리고 버전 몇부터...

자바API, WIN32API, MFC 관련 질문이요...

... ㅠㅠ 부탁드립니다ㅠㅠ WIN32나 MFC는 어떠한 특별한기능을... 운영체제를 이용해서 자신에게 필요한 기능들을 스스로 만들어 나가는거죠. 하지만 자바API는 웬만한...

챗gpt 4.0 일반이랑 API버전 차이가...

... 다시 설명해봐라 하거나 제가 묻는 질문에 답하게 하고 싶은데요... 있는지,아니면 API를 사용하면 일반 사용을 못하는지 이부분도 궁금합니다. 답변 부탁드립니다....

자바에서 이런 API는 없나요??

자바에서 DB파일의 n번째줄부터 입력하게 하는 API는 없나요?? 보통의 방식으로 하니까 자꾸 새... 부탁드립니다. 예) aaaaaaaa bbbbbbb | <새로 입력을...

자바 for 문 속에서 api 인식 안됨...?

... 질문 드립니다. 윈도우 10 21H2 프로그램 : 인텔리제이 최신버전 프로젝트 자바 버전 : jdk 1.7 , 1.8 둘다... 플러그인을 이용하여 마인크래프트 1.9 버전 api 로...

자바 api질문인데요

... // 이 달의 마지막일을 찾는다. } } 자바api보... 시원한 답변좀 부탁드립니다.~ http://java.sun.com/j2se/1.5.0/docs/api/java/util/Calendar.html...