java

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ java ] in KIDS
글 쓴 이(By): hell (나누구야)
날 짜 (Date): 1997년10월09일(목) 22시10분36초 ROK
제 목(Title): 자바의 데이터형과 변수 (4)



 ------------------------------------------------------------------------------
 뉴스제공시각 : 02/01 00:00                   출처 : 마이크로 
 제목 : 자바프로그래밍[2]/자바의 데이터형과 변수 (4)
 -----------------------------------------------------------------------------

문자열(String)
C/C++에서 문자열은 char형의 배열이었다. 하지만 자바에서는 조금  다르다. 자바에
서 문자열은 String이라는 클래스의 인스턴스들이다.  따옴표 등 C/C++에서와 동일
한 형식으로 문자열을 사용할 수  있도록 자바에서 지원하고는 있고 문자열을  합칠 
수 있도록 '+' 연산자를 제공하고 있지만, 그 사실을 제외하고는 다른 여타 
클래스와 
전혀 틀릴 바가 없다. 특별 대우받는 클래스라고 하면 될까?
한 가지 더 놀라운 사실은 String 객체는  내용을 수정할 수 없는 객체라는 점이다. 
상수와 같다. 이런 까닭에 StringBuffer라는 클래스가  별도로 제공된다. 처음 자바 
프로그래밍을 할 때 제일 당혹스러운 것중 하나가 이 문자열이 C/C++와 상이하다는 
점이다. 배열이 아니라서 지금까지 배운 지식으로 문자열을  다루는 것은 턱도 없는 
일이다. 이들 클래스에 대해서는 다음에 별도로 다루기로 하겠다.
참고로 지금까지 예제에서 사용한 '+' 연산자는 문자열끼리 이어 새로운 문자열 객체
를 만들어 내는 연산자이다. 이 연산자는 대상중 어느 한쪽이 문자열이기만 하면 사
용할 수 있으며, 문자열이 아닌 데이터는 자동으로 문자열로 변환해 준다. 이  때 사
용되는 것들이 각 클래스에 정의된 toString() 메쏘드이다. 자바 컴파일러는 
내부적으
로 toString() 메쏘드를 사용해서 '+' 연산자를 구현한다. int와 같은 기본 
데이터형은 
각 데이터형에 해당하는 특별한 클래스인 Integer, Character 등의 클래스에  
정의되
어 있는 toString() 메쏘드를 사용하여 문자열로 변환된다.
필자 연락처 : dynaxis@dice.postech.ac.kr
정리 : 박은숙 

참고자료
① Kathleen Jensen and Niklaus Wirth, "Pascal User Manual and Report," 
4th Ed., 1991, Springer-Verlag New York, Inc., pp.10
② 월간 마이크로소프트웨어 1996년 12월호 pp. 296-306, "자바에서의 한글
구현과 그 해결책"
③ Bjarne   Stroustrup, "The   C++ Programming  Language,"  2nd  Ed. 
Addison-Wesley, 1991
④James Gosling,   Bill Joy,   and Guy   Steele, "The  Java  Language 
Specification," Addison-Wesley, 1996
⑤Richard  S.  Wiener  and  Lewis  J.  Pinson,   "An Introduction   to 
Object-Oriented Programming and C++," Addison-Wesley, 1988
⑥Richard  S.  Wiener  and  Lewis  J.  Pinson,   "An Introduction   to 
Object-Oriented Programming and Smalltalk," Addison-Wesley, 1988
⑦  Tim  Lindholm   and Frank   Yellin,  "The   Java Virtual   Machine 
Specification," Addison-Wesley, 1996
⑧ Ken Arnold and  James Gosling, "The  Java Programming Language," 
Addison-Wesley, 1996
⑨   Mary  Campione   and   Kathy   Walrath,  "The   Java   Tuturial, 
Object-Oriented Programming for the Internet," Addision-Wesley, 1996



이달의 숙제
지금까지 배운 지식을 활용해서 세모꼴로 생긴 2차원 배열을 구현하는 것이 가능하
다.



논리적으로 위와 같은 형태의 배열의 기능을 하는 배열을 선언해서 초기화 해 
보자. 
당연하지만 C/C++, 파스칼과 같은 언어에서는 위와 같은 배열을 만드는 것이 불가능
하다.
 
[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.