JAVA/Bootcamp 자바

객체와 클래스, 배열

whyHbr 2024. 2. 21. 15:41
728x90
반응형

객체 데이터: 여러 개의 변수로 이루어진 데이터.

Ex) 책의 구성 요소 제목, 출판사, 저자,, 가격 등

책이라는 데이터는 하나의 변수로 나타낼 수 없다.

 

책 한권을 나타낼 변수를 선언해보자

Book b; 

Book 안에는 title, price, company, author, page, isbn변수가 들어있다.

이를 하나의 구조로 만들어야 하는데 이를 설계하는 도구를 class 라고 한다.

class 란, 새로운 자료형을 만드는 = 설계하는 = 모델링하는 도구이다.

public class BookDTO {
   
public String title;
    public int
price;
    public
String company;
    public
String author;
    public int
page;
    public
String isbn;

}

 

책을 만들고 출력하려면?

public class BookTest {
   
public static void main(String[] args) {
       
// 한권의 책을 저장하고 출력
       
String title = "java";
        int
price = 10000;
       
String company = "fastcampus";
       
String author = "name";
        int
page =100;
       
String isbn = "ISBN-1122";
   
}

}

개별로 한 권의 데이터를 입력한 것이다.

 

Book 을 선언하는 방법

Book b;

이것은 메모리 기억공간에 하나의 구조로 저장된다.

이 구조의 이름은 Book이 된다.

Book은 하나의 자료형이 됐다. int, String 처럼 쓸 수 있다.

 

B에 데이터를 어떻게 입력할까?

- 변수를 선언한다. Book b;

- 객체를 생성한다. (= 실체를 만든다) new Book(); 에 생성된 것을 실체 instance 라고 한다.

- 생성된 것을 객체에 연결(=저장) 한다. Book b= new Book();

 

b를 인스턴스 변수라고 한다. 도트 연산자를 통해 데이터를 넣는다

b.title = "Java";

b.page =100;

 

동일한 데이터를 여러 개 저장할 수 있는 구조(객체)를 배열 Array라고 한다.

동일한 연속적인구조, 동일한 변수들의 집합이다.

이동이 쉽고 배열 길이는 수정이 불가하다.

반복문 사용이 가능하다

자바에선 배열을 객체로 취급하기 때문에 new 를 사용한다.

 

정수 3개를 저장할 배열 생성 : new int[]arr = new int[3];

 - 변수를 선언하고 int[] arr

- 객체를 생성하고 (=실체를 만들고) new int[5]

- 생성된 객체를 연결한다 arr= new int[3];

배열의 길이가 궁금하다면 arr.length

 

배열초기화

int arr[] = new int[]{1,2,3,4,5};

int a[] = {1,23,4,5};

 

Book 을 배열로 선언해보자

Book[] b = new Book[3];  -> 3권의 책이 들어갈 수 있다.

 

이 책에 데이터를 넣으려면

// 3 저장할 배열 생성, 출력
Book[] b = new Book[3];
b[0] =new Book();
b[0].title ="jAVA";
b[0].company ="fast";
b[0].price =30000;
b[0].author ="name";
b[0].isbn ="isbn345730";
b[0].page =200;

책은 객체배열이고 

int[] a= new int[3]; 와 float[] f = new float[3]; 은 기본배열이다.

 

학생 3명의 3개의 과목 성적을 입력하고싶다면 이차원배열 을 사용한다.

이차원 배열은 행과 열로 이루어진다. 

 

int[]score = new int[3][3];

score[행][열] , score[1][2] -> 두번째 줄 3번째

score[0][0] -> 첫번째줄 첫번째, 왼쪽 제일 위에

 

이차원배열에 데이터를 넣는 방법: int[][]a = {[1,2,3,4},{1,2,3,4}};

a[1][3] 값은 4가 된

728x90

'JAVA > Bootcamp 자바' 카테고리의 다른 글

VO class, 메서드 오버로딩, toString()  (0) 2024.02.22
접근제어  (0) 2024.02.21
메서드와 변수  (0) 2024.02.21
연산자  (0) 2024.02.21
자바 기초: 컴파일? 빌드? JDK? JRE? JVM?  (0) 2024.02.14