본문 바로가기

구디 아카데미 수료 과정/JAVA

구디아카데미/클라우드 활용 자바개발자 양성과정/•6일차/국비지원IT개발자 취업 / 김명신 강사님/10.30

2차원 배열의 생성과 초기화

 

int[][] arr = new int[3][2];

arr[0][0] = 10; arr[0][1] = 20;

arr[1][0] = 30; arr[1][1] = 40;

arr[2][0] = 50; arr[2][1] = 60;

 

for(int i =0 ; i<arr.length; i++)

for(int j=0; j<arr[i].length; j++) {       

System.out.print("arr["+i+"]["+j+"]="+arr[i][j]+",");

 -> arr.length =3  arr[i].length =2 인거 이해하기

 

1차원 배열 객체 변경하기

 

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

 arr[1] = arr1; // arr 1번지를 arr[1]행에 넣었음

 

for(int i =0 ; i<arr.length; i++) {

for(int j=0; j<arr[i].length; j++) {

System.out.print("arr["+i+"]["+j+"]="+arr[i][j]+",");

}

System.out.println();

배열이 왜 위에서 아래로 바뀌었어?

-> arr[1]에 강제로  1,2,3,4,5를 넣었잖아 그러니 바뀐거임

 

그러면 arr1[3]= 5000; 하면 어떻게 돼?

-> arr1배열 새로만든거에 3행을 5000으로 바꿨으니

   arr[1]에 arr1을 넣은 상태였으니까 이거도 바뀌지

 

 

예제1

 2차원 배열의 행과 합을 출력하기

1. 열의 값(cols)이 추가되는 과정 이해하기 힘들었음. 머리로 계속굴려보기

 

 

 

for (int a : arr) 의 뜻은? ->

arr 배열에 있는 각 요소들을 a에 넣으면서 실행해봐   int=arr배열에 있는 요소의 자료형 

만약

string[] arr = {"123","456","abc"} 가 있으면

for(String s : arr)이라고 해야함 

이거뭔뜻인지 이해 못했음

 



클 래 스

 

   객체지향언어

 

• 추상화: 클래스생성단계   객체는 그대로지만  그 객체로부터 필요한 정보를 추출하는 과정

 

  클래스:!!!!사용자 정의 '자료형'!!!! 객체 생성 도구. 객체지향언어에서 가장 중요한 개념

              (직접 쓸수없고 객체화를 통해서만 접근가능??)

           1. 속성 : 멤버변수

           2. 기능 : 멤버메서드 

   

  객체화 : 클래스 정보를 이용하여 메모리를 할당받는 과정. new 클래스명(); 참조변수로 참조하여 사용함.

 

      하나의 참조변수는 하나의 객체만 참조가 가능함

      하나의 객체는 여러개의 참조변수로 찬조 가능함.

       -> 참조변수가 참조하지 않는 객체는 사라진다.

 

• 상속 :재사용 (extends)   부모클래스를 자손클래스가 다 가져오는거

 

• 다형성 : 객체(참조변수)의 형 변환

 

• 캡슐화 : 접근제한자 (4가지)