본문 바로가기
728x90

전체 글244

문자열 비교 String은 char의 배열 # String에 입력된 문자를 선택 String str = "문자열"; str.charAt(i); // i번째 문자 선택 System.out.println(i); //i번째 문자 출력 #문자열 비교String com1 = "abc"; String com2 = new String("abc"); com1.equals(com2); //com1과 com2 비교, 같으면 true, 다르면 false 반환 2012. 6. 4.
간단한 사과 먹기 게임 #Rectangle 클래스를 이용하여 간단하게 사과를 먹고, 사과를 먹으면 점수바가 올라가는 프로그램. 결과) 규칙1. 사과는 랜덤한 좌표에 10개씩 등장한다(배열 이용)2. 백설공주는 화살표 키를 이용하여 움직일 수 있다.3. 백설공주가 사과에 닿으면 사과는 사라지고 점수바가 올라간다.4. ENTER키를 누르면 사과 이미지가 초기화되며 다시 10개의 사과가 등장한다(단, 점수바는 초기화되지 않는다.) *소스자료* 2012. 5. 17.
Rectangle #Rectangle은 어떠한 사각형이 있을 때 그 사각형의 정보를 가지고 있으며, 만약 어떤 두 사각형이 있을 때 그 두 사각형이 교차하는 것이 있는지 확인하는 메소드를 가지고 있다. 선언Rectangle 변수명 = new Rectangle(x, y, w, h); 두 사각형이 교차하는지 비교boolean result = rect1.intersects(rect2));result -> true = 교차, result -> false = 교차하지 않음 이 클래스를 이용해서 간단한 사과 먹기 게임을 만들 수 있다.규칙은 간단하다.1. 사과가 윈도우 창에 뜬다.2. 조종할 수 있는 그림으로 사과에 다가가면 사과가 사라진다. 2012. 5. 17.
사과 막대 그래프 그리기 #ENTER와 SPACE바를 누르면 증감되는 점수에 따라 사과 이미지가 늘어나고 줄어드는 프로그래밍ENTER: 증가, SPACE: 감소총 4개의 클래스를 작성하였으며,AppleImage : 이미지 선언하는 클래스AppleScore : 생성자 클래스AppleScoreScreen : 사과 막대 그래프를 그리는 클래스Starter : 실행 클래스로 구분되어진다. 2012. 5. 16.
mouse이벤트 #키 이벤트와 마찬가지로 마우스 이벤트 역시 눌러졌을때, 혹은 때어졌을 때 클릭되어진 좌표를 인식하여 그에 해당하는 작업을 할 수 있다. 예를 들면 mmorpg에서 캐릭터 이동을 위해 지점을 클릭하는 것과 마찬가지로 간단하게나마 마우스의 클릭을 통해 작업을 하는 것을 배워볼 수 있다. ex)이 코딩은 마우스를 클릭하였을 때 해당 좌표에 위치한 이미지를 변환시키는 것이다.this.addMouseListener(new MouseAdapter() { //마우스 리스너(이벤트) 선언@Overridepublic void mousePressed(MouseEvent e) {int mx = e.getX();int my = e.getY(); //x와 y의 좌표값을 클릭하였을 때 x, y 좌표 값으로 선언 for(int .. 2012. 5. 16.
key 이벤트 #이벤트(리스너)는 마우스 또는 키보드로 이벤트를 발생했을 때 컴포넌트가 적당한 작업을 수행하도록 처리하는 것을 말한다. 간단한 예로 이벤트를 이용해 어떠한 키를 입력시 그에 해당하는 작업을 수행하게 할 수 있으며, 마우스 역시 마찬가지이다. 키 이벤트는 아래와 같이 선언되어진다.ex)this.addKeyListener(new KeyAdapter() { //눌러진 키와 arr[0] 교환@Overridepublic void keyReleased(KeyEvent e) {//키가 눌러졌다 때어졌을 때 그 값이 키 이벤트 e에 등록되어진다. int key = e.getKeyCode(); // int key값에 key이벤트 값을 넣는다.//0~4키를 누를 때만 처리if(key >= KeyEvent.VK_0 && .. 2012. 5. 16.
static static은 멤버변수와 메소드를 클래스간 공유를 할 수 있게 해준다.static을 사용하게 되면 -멤버변수: 공동 사용 가능 -메소드: 인스턴스화 하지 않고 사용 가능또한 상수 역시 static화 할 수 있는데...이땐- public static final 반환명 변수명 으로 입력을 하게 되면 상수가 선언되어진다.*상수: 변하지 않는 변수 2012. 5. 16.
DrawImage #이미지를 그리는 법 원본(src)을 화면(dst)에 범위를 지정하여 출력하는 방법으로, 원본이 있으면 그 원본에서 보여주고 싶은 부분만을 지정할 수 있고, 또한 화면에 출력하는 것도 지정된 범위에 그림이 뜨도록 할 수 있다. 그림 속 빨간 상자와 같이 우선 해당 프로젝트 내에 폴더를 만들어 그곳에 이미지 파일을 저장해주어야 한다. 프로젝트에서 오른쪽 클릭을 하면 뜨는 메뉴에서 new -> folder를 선택하면 해당 폴더를 만들 수 있고, 그곳에 이미지를 복사한다. import java.awt.Frame;import java.awt.Graphics;import java.awt.Image;import java.io.File;import java.io.IOException; //이미지를 불러와 출력하기 위.. 2012. 5. 9.
패턴 import java.awt.Frame;import java.awt.Graphics; public class MyWindow extends Frame{@Overridepublic void paint(Graphics g) { //paint: 그리기 메소드g.fillRect(100, 100, 50, 50); //x:100, y:100, 넓이:50, 높이:50//색깔이 채워진 사각형//200, 100 위치에 사각형 선 그리기g.drawRect(200, 100, 100, 50);//50,50 위치에서 200,200까지 선 그리기g.drawLine(50, 50, 200, 200);//100, 200 위치에 원 그리기(채우기)g.fillArc(100, 200, 100, 100, 0, 360); // x, y, 넓이.. 2012. 5. 8.
상속 public class Child extends Parent {public Child(){System.out.println("Child의 생성자를 호출");}@Override //컴파일러에게 알려주는 역할public void work() {//super.work(); //부모의 work메소드를 호출System.out.println("쉬면서 일해요");}public void buy(){this.account--;System.out.println("구매완료..잔액은? "+this.account);} 실행public static void main(String[] args) {Child c = new Child();c.work();c.buy();c.buy();}결과 2012. 5. 8.
상속 #상속 : 재사용인터페이스: implements 클래스: extends 클래스 상속)class Child extends Parent{ }인터페이스 상속)class Child implements Check{ } 1. 접근 가능: 접근 제한자 protected 이상2. 부모와 자식간 생성자 부모->자식 순으로 호출 3. 부모의 접근 가능한 모든 리소스 사용 가능4. 부모의 메소드 재정의(overriding)5. 필요한 리소스는 추가 2012. 5. 8.
메소드 #메소드 오버로딩 -비슷한 메소드 여러 개를 정의 가능. 단)인수가 틀려져야 함. -한 클래스 내에 같은 이름의 메소드 여러개 정의.#메소드는 행위, 기능을 나타내기에 동사 형태의 단어를 써주는 것이 좋다#형식 public 반환형 메소드명(인수){ } #반환형과 인수의 유무//반환형 O, 인수 Xpublic int eat(){ //반환형이 void가 아닌 경우는 반드시 같은 타입의 데이터를 반환해야함.return 5;}//반환형0, 인수Opublic String eat(int cnt){return "아이템을"+cnt+"개 먹었다.";}//반환형 X, 인수 Xpublic void move(){System.out.println("움직이기...");}//반환형 X, 인수 Opublic void move(int.. 2012. 5. 8.
SMALL