클래스와 객체에 대한 질문드려요
물보라
탁구에서 키바(위아래로 공을 쳐줄)를 클래스에 하나의 메서드로 만들었습니다.
import java.awt.*;
import java.awt.event.*;
class frameevent extends frame implements keylistener{
label info;
int x = 40;
int y = 50;
string egg=;
public frameevent(){//생성자
info =new label();
add(south, info);
addkeylistener(this);
setsize(400,400);
setvisible(true);
addwindowlistener(new windowadapter(){
public void windowclosing(windowevent e){
dispose();
system.exit(0);
}
});
}//생성자 끝
public void paint(graphics g){
g.setcolor(color.red);
g.fillrect(x, y, 20, 50);
}
//info.addkeylistener(new keyadapter){
public void keypressed(keyevent e){
//egg += e.getkeychar();if(e.getkeycode()==keyevent.vk_up){
y -= 10;
repaint();
}
if(y = 30)
y = 30;
if(e.getkeycode()==keyevent.vk_down){
y += 10;
repaint();
}
if(y = 300)
y =300;
}
public void keyreleased(keyevent e){
}
public void keytyped(keyevent e){
}
//}
}//frameevent 클래스 끝
class pong1{
public static void main(string args[]){
new frameevent();
}
}
오류는 안나는데, 객체, 클래스에 대한 개념이 자동차로는 설명이 되는데 자바에 직접코드화를 못하고 있습니다.
현재 만든 소스 말고, 탁구게임니니까, 공에 대한 클래스, 키바에 대한 클래스, 스코어 클래스를 따로 만들어서
프로그램화 하고 싶습니다.
자바에서 객체를 이용해서 공클래스, 키바클래스, 스코어 클래스, 이런식으로 해서 프로그램화 하고 싶은데요.
(예로 쓰는거니 영어대문자로 시작안했다고 혼내지마십시오, 안에 메서드 조건은 적지 않고 틀만 봐주십시오)
class 공{}//공 대각선으로 움직이는 메서드를 넣을 클래스, 실제 움직임을 주면 객체인거죠?;;
class 키바{}//공을 쳐낼 키바 메서드를 넣을 클래스
class 스코어{}//공이 떨어졌을때 점수를 넣을 클래스
class 탁구{//메인이 있는 클래스
공 호출
키바 호출
스코어 호출
}
이런식으로 하면 오류가 나지않고, 메인클래스에서 공을 부르고, 키바를 부르면
탁구게임에서 공이 움직이다가 키바로 쳐내고 이런 동작이 되는 것입니까?;;;
소스작성보다, 상속 이런것보다 .. 책보고 예제에서 쉬운 클래스 생성자 이런부분들은 봤는데요.
직접적으로 틀을 만들어서 사용을 잘 못하고 있습니다.
(책보세요라는 답변보다 좀 설명을 부탁드립니다. 책은 더 열심히 보겠습니다. )
-
블레이
객체지향프로그램에서.. 클래스와 객체의 차이는 메모리를 기준으로 생각하면 쉽습니다..
class Ball{} 이렇게 언한 클래스는 해당 클래스가 처음 호출되어질때
JVM메모리의 클래스 영역에 형태만 자리잡게됩니다.
즉, Ball이 어떻게 생겼다의 정보만 메모리에 생긴다고 할까요. 붕어빵틀이 만들어진거죠 머. ㅋ
class Ball{} 을 구현하고..
public static void main(String args[]) 에서
Ball firstb -
새늘
아 다들 너무 감사합니다 (꾸벅~ ) 이해가 되고 더더 열심히 해보겠습니다 + _+삐싱
-
다미
문의 하신 질문을 살짝 비꼬아서 풀어 보자면...
초등하교 생물은 읽어 봐서 대충 사람의 구조를 이해는 했는데....
사람은 눈으로 물체를 확인하고 머리로 생각하면서 밥 먹고 배설하면 살아가는게 맞습니까??
막상, 인체의 동작 매커니즘을 구석 구석 구체적으로 직접 알고 싶은데 어렵네요.
책보라는 말씀은 하지 마시고 세부적으로 이해가 가능하도록 설명 부탁드립니다.
와 같다고 보시면 될 것 같네요^^
그저 간단 한 것부터 만들어보는게 가장 좋고...
굳이 -
풀잎
문제는...
그렇다면 이 Ball 객체를 어떤식으로 틀을 형성시켜 놔야 잘 만들어졌을까 인데...
몇일 노력한다고 해서 해결되는 부분도 아니고...
책을 미친듯이 보고 남들의 노하우도 섭력하고 해도
좀처럼 쉽게 해결되지 않는게 객체설계입니다.
아마도, 문의 하시는 부분은...
빨간공을 만들기 위해서는..
Ball 클레스의 속성에 color라는 어트리뷰트를 넣어놓고...
Ball redBall = new Ball(COLOR.RED);
와 같은 효율적인 -
유미
쉽게 클레스와 객체 구조의 예를 볼 수 있는게...(보통 구조체에 사용하는 예제....)
길거리에 있는 붕어 빵 장수를 보면 쉽게 이해할 수 있습니다.
이때, 붕어빵을 만들기위한 빵틀이 클레스이며...
이 클레스로 쿡~ 찍어서 맹글어진 붕어빵이... 객체입니다.
이런식으로 어떤 틀에 해당하는게 클레스이며....
이 틀에 의해 만들어진 결과 물이 객체입니다.
Java에서는 Class 로 선언되면 클레스고...
해당 클레스를 이용해서 변수를 생성하셨으 -
말글
객체와 클레스에 대한 구분이 모호 하신거라면..
제가 알고 있는 객체와 클래스는
class className
{
...
...
}
이게 클래스고
.....
{
ArrayList list = new ArrayList();
int index = 0;
..
..
className clsName = new className();
..
}
list와 clsName가 객체로 알고 있습니다.
index는 변수고요..
틀렸다면 바로 잡아 주세요..