본문 바로가기
Develop/Java

12 자바 Java 클래스와 객체(인스턴스) 생성하기

by 구운밤이다 2016. 9. 12.
728x90
반응형

2016/09/05 - [IT/Java] - 11 자바 Java 재귀 메소드 팩토리얼 factorial 예제

안녕하세요 이번시간에는 자바의 클래스를 정의하고 다루는 법을 배워보도록 할거에요~ 클래스는 우리가 자바 프로그래밍을 하거나  만들 때 항먼저 클래스의 정의를 알아보도록 하겠습니다. 클래스란 바로 객체를 담는 틀을 의미합니다! 틀 안에 있는 하나의 클래스를 기반으로 객체들이 생성되는 것인데요. 

여기서 객체란 것의 정확한 뜻은 무엇일까요?? 바로 물건이나 대상 같은 단어를 의미해요~ 예를 들어 과일, 컴퓨터, 나, 친구, 이런 것들이 객체가 되겠죠? 그럼 예제를 통해 알아보도록 할게요.


class MusicPackage {

int DownloadNum;//변수선언 

int StreamingOpt;

public int SetDownload(int n) {//메소드정의

if (DownloadNum==0) return DownloadNum;

else if (DownloadNum==30){

DownloadNum-=n;

return DownloadNum;

}

else{

DownloadNum-=n;

return DownloadNum;

}

}

public boolean SetStreaming(){

if (StreamingOpt==0) return false;

else return true;

}

public void Init(int n1, int n2){

DownloadNum=n1;

StreamingOpt=n2;

}

}


이렇게 생긴 예제가 있다고 칩시다. 실제로는 저렇게 안 생겼겠지만 간단하게 음악 다운로드 패키지 옵션을 저렇게 정의했다고 치고 예제를 보면, 클래스라는 틀은 보통 이렇게 생겨있어요~ 위에 변수선언들을 해놓고 그 밑에 메소드가 있죠. 요렇게 생긴 클래스를 활용을 하려면 객체를 생성해야 됩니다! 객체는 다음과 같이 생성하면 됩니다.


MusicPackage sInst = new MusicPackage();


이렇게 하면 객체가 생성됩니다! 이걸 인스턴스화라고도 하는데요. 이렇게 하면 이 객체가 메모리 공간을 할당받아 메소드를 호출할 수 있게됩니다! MusicPackage sInst 여기서 앞에 MusicPackage 부분은 int 같은 타입을 말하고 sInst는 그냥 변수 이름을 말합니다. 그리고 그 옆의 new MusicPackage(); 이 부분은 MusicPackage 객체를 생성해라! 라는 말입니다! 이렇게 객체를 생성한 뒤



MusicPackage sInst = new MusicPackage();

System.out.println("남은 다운로드 갯수 "+sInst.SetDownload(5));

sInst.Init(50, 1);

if(sInst.SetStreaming()) 

System.out.println("play");

else

System.out.println("Quit");


요런 식으로 써주면 되겠죠? 물론 너무 허접한 예제여서 죄송하긴 하지만... 암튼 이렇게 클래스와 객체(인스턴스)에 대해서 알아보았습니다!


댓글공감구독(이웃추가)는 블로거에게 큰 힘이 됩니다! 부탁드리면서 이번 포스팅을 마치도록 하겠습니다! 지금까지 딘또였습니다.


728x90
반응형

댓글