파일명:Ex05_01_클래스.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | class Tv{ //멤버변수 String color; //인스턴스 변수 boolean power; //인스턴스 변수 static int channel; //인스턴스 변수 static String company; //static 변수 , class 변수 모든 객체에서 공유하고 싶을때 앞에 static을 붙인다 하나만 만들어 짐 //static 매서드 public static void channlup(){ //channelup 매서드 정의 channel++; //위에 cahnnel에 static을 붙여줘야 한다 } //인스턴스 매서드 public void channeldown(){ //channelup 매서드 정의 channel--; } } /* * 인스턴스 변수==객체, static 변수의 기본 값 boolean : flase int : 0 double 0.0 String : null */ public class Ex05_01_클래스 { //main이라는 매서드를 가지고 있는 실행 클래스 public static void main(String[] args) { int a; //지역변수 //공간을 만드는 작업 : 객체를 만든다. Tv t1 = new Tv(); //임의의 주소에 Tv공간이 만들어 짊. 주소(참조값)가 t1에 들어감 //t1은 참조변수 t1.color = "red"; t1.power = false; t1.channel = 11; //t1.company = "삼성"; Tv.company = "삼성"; //위와 둘다 가능 class이름으로도 접근 가능 static 변수는 class 변수 Tv.channlup(); System.out.println(t1.color); System.out.println(t1.power); System.out.println(t1.channel); t1.channeldown(); System.out.println(t1.color); System.out.println(t1.power); System.out.println(t1.channel); Tv t2 = new Tv(); t2.color = "blue"; t2.power = true; t2.channel = 7; t2.channlup(); System.out.println(t2.color); System.out.println(t2.power); System.out.println(t2.channel); System.out.println(t2.company); } } | cs |
파일명:Ex05_02_클래스.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | public class Ex05_02_클래스 { public static void main(String[] args) { Tv t1 = new Tv(); t1.color = "yellow"; t1.power = false; t1.channel = 3; System.out.println(t1.color); System.out.println(t1.company); } } //class는 같은 프로젝트 안에 이름이 같은 클래스가 두개 이상 존재해서는 안된다. | cs |
예제 코드
결과
객체지향프로그래밍에서 가장 중요한 class이다.
java에서 여러가지 변수형을 사용하는데 각각의 변수형은 하나의 값만 사용가능 하고
배열은 같은 형식의 변수만 모을수 있다.
하지만 class를 사용하면 한번에 여러형식의 변수와 여러개의 값을 저장하거나 불러올 수 있다.
위의 예제는 Tv클래스를 사용하여 color, power, channel, company 네개의 변수를 선언하여 사용한다.
color는 String변수, power는 boolean변수, channel은 int변수, company는 String 변수이다.
각각의 변수는 필요한 형식에 맞게 선언할 수 있다.
이를 맴버 변수라고 한다.
맴버 변수의 기본적으로 default로 선언 된다.
그런 변수를 인스턴스 변수라고 부른다.
인스턴스 변수는 호출한 main 매서드나 다른 매서드에서 사용이 가능하고 다른 패키지에서는 사용이 불가능한 변수이다.
인스턴스 변수는 클래스가 호출 될 때만 사용하수 있고 다시 호출 된 클래스 변수에서는 다시 값이 초기화 된다.
static으로 변수를 선언하면 static 변수라고 부른다.
static변수는 static매서드에서만 사용가능하다.
인스턴스 변수와 다르게 클래스 변수가 선언되기 전에 미리 선언되어 있고
클래스를 다시 선언하여도 값은 변하지 않고 고정되어 있다.
static변수는 같은 패키지 내의 다른 클래스에서도 사용 가능 하다.
일반 변수를 선언할때는 기본값이 없어 처음에 값을 입력해 주지 않으면 사용이 불가능 하지만
인스턴스 변수는 기본적인 값이 있기 때문에 초기 선언 없이도 변수 사용이 가능하다.
클래스를 사용하기 위해서는 객체를 생성해 주어야 하는데
객체를 생성하기 위해선 Tv t1 = new Tv(); 와 같이 new를 사용하여 객체를 생성하고
t1이라는 이름으로 객체를 변수 형식으로 만들어 줘 사용한다.
클래스를 사용하기 위해선 t1이라는 변수 이름으로 접근하여 사용이 가능하다.
'Programing > Java' 카테고리의 다른 글
[Java] 예제 매서드-3 (0) | 2016.05.21 |
---|---|
[Java] 예제 클래스-2 (0) | 2016.05.21 |
[Java] 과제 배열 (0) | 2016.05.21 |
[Java] 예제 배열 2차원입력 (0) | 2016.05.21 |
[Java] 예제 배열 2차원 (0) | 2016.05.04 |