티스토리 뷰

Programing/Java

Java1 - 14. class

HNNN 2017. 4. 26. 23:11



 ->클래스와 객체

  클래스가 무엇이냐
   
  인스턴스와 객체
  
  데이터 저장소 : 변수 (클래스에 만드는 변수 == 인스턴스 변수)  

  데이터 처리하기 : 메서드



▷ 데이터를 집합으로 구성하면 편리하다 --> 배열을 통해서 공부 (for문 일괄처리가능)  
       =>동일한 데이터만 집합으로 묶을수있다

▷ 클래스의 필요성 : 동일하지 않은 데이터를 묶기 위해서는 클래스가 필요하다

   10,20,30 --> int [] ar = {10, 20, 30} ;
   "1", "안녕", "30"  --> String [] ar = {"1", "안녕", "30"};
  
▷ 30, "안녕", true , 1.1 --> ??? [] ar ={0, "안녕", true , 1.1};
   int String  boolean  double
   -->데이터가 다양하게 섞여 있을 경우에는 class를 사용

 


클래스를 하나 만들자
 

 클래스 == 타입(사용자 정의 타입) <--> int float double ....
    user define  기본형
 ▷ 내가 타입(정1, 문자열1, 불린1, 더블 1)

 ▷ 내가 만든 타입 이름
   17byte 변수
   "이름" 객체( 참조 변수 )
   

▷클래스의 설계

  class simpleData{ // 클래스 타입, 레퍼런스 타입, 사용자 정의 타입, 클래스의 설계

       int a; 
       String greeting;
       boolean isPass;
       double b;
        (방)

  
  }

  

public class My{
       public static void main(String [] args){

    // 10,20,30 -->  메모리에 올려놓은 후 데이터를 넣어야지 

        simpleData  myData =new SimpleData();
          (타입)       //메서드를 호출하는 것
         객체 인스턴스(실체)화 하다
         (참조변수)
    --------------------------------------
    인스턴스를 만들고 객체를 하나 붙여주자
   그 객체를 통해서 각 방을 호출할 수 있다


    집 ==> myData(객체)


    내가 가지고있는 방을 부를수 있는 객체

    설계도 ==> simpleData
   ---------------------------------------

   ▷myData.변수(방)을 불러 낼수 있다


   myData.a =70;
   myData.greeting = "안녕":      ==>myData 집에 있다
   myData.isPass = false:
   myData.b  = 1.1;


   syso(myData.a);
   syso(myData.greeting);
   syso(myData.isPass);
   syso(myData.b);


   /*
     Scanner sc = new Scanner();
     School sc = new School();
     int sc = 10;(10을 집어넣을려면 int 라는 변수로 만들어야 함)
   */

   

       }

  }


▷   같은 package 에 class 한번 저장하면 계속 사용 가능


   


#실습1.


1.) 클래스의 설계 : 타입을 만들어 보자 
2.) 클래스의 인스턴스, 객체에 담아 보자 
3.) 객체를 통해 각 변수를 불러보자 그리고 값을 대입시키자 
4.) 대입된 값을 출력해 보자
   


※ 메서드 정의(define)  : 동사

※ class이름은 : 주어(명사)


package classex;


class Book{


 String title;
 String writer;
 int page;
 int price;
 
 void printInfo(){     //메서드 : 반복적으로 진행되는 일들
  System.out.println("===책 정보===");
  System.out.println("책 이름(작가) :"+this.title+"작가 :"+this.writer);
  System.out.println("책 가격(페이지) :"+this.price+"원"+this.page+"쪽");
 }                                    //this  : 객체가 달라지는 것을 대응하기위해 객체 변수를 만듬

this는 메서드를 만들때부터 내장되어있어 생략가능


}



public class ClassTest {

 public static void main(String[] args) {
  
  Book sam=new Book(); // 객체 = 인스턴스 생성
  
  sam.title="삼국지";
  sam.writer="나관중";
  sam.page=500;
  sam.price=15000;
  
  Book herry=new Book(); // 인스턴스 생성
  
  herry.title="해리포터";
  herry.writer="조앤 롤링";
  herry.page=300;
  herry.price=21000;
  
  sam.printInfo();
  herry.printInfo();
  
  
  
 }

}



'Programing > Java' 카테고리의 다른 글

Java1 - 16. private  (0) 2017.04.28
Java1 - 15. Method 만들기  (0) 2017.04.27
Java 이용 - ATM기 작성  (0) 2017.04.26
Java1 - 12. while문  (0) 2017.04.26
Java1 - 11. For 문  (0) 2017.04.26
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/02   »
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
글 보관함