접근제어자 와 배열심화

이동원·2024년 3월 11일

접근제어자 :함수에대해 접근을 제어하는역할

  • 지역변수가 아닌 인스턴스 변수와 메서드 클래스에 사용

  • public(모든 클래스에 접근가능) ,protected(같은 패키지 내의 클래스와 다른
    패키지의 상속관계에 있는 클래스에서 접근가능 ,default(같은 패키지 내의 클래스에서
    접근 가능 ), private(같은 클래스 내에서만 접근가능)
    cf) default 는 접근제어자 생략가능 ,private 는 자기자신만 사용가능

  • import :다른 폴더 (패키지)의 클래스를 불러온다.
    단축기: alt+엔터로 자동 임포트 가능

cf) 카멜표기법 : 단어 여러개 조합해서 명명할때 의미가 바뀌는 부분에서 대문자를 넣어주는 방식

cf) alt + insert : getter ,setter

배열의 단점

배열의 단점
int[] arr = new int[1000];

    arr[0] = 10; // 0번째 인덱스 사용
    arr[10] = 100; //10번째 인덱스 사용

    배열의 크기를 변경할수 없다 .
    배열은 크기가 고정이라서 유연하지가 못한다 .
    동적 배열 > 길이를 정하지 않고 유동적으로 변하게함 .
    동적배열은 객체만 저장가능.
    원시 타입 > int , double boolean  등등
    원시타입을 제외한 자바의 모든것은 객체다.
    원시타입의 객체타입 존재.
    int >Integer , double > Double boolean> Boolean

    ArrayList<Integer> list = new ArrayList<>();

    list.add(10);
    list.add(20);
    list.add(30);

    값 가져오기
    int rst = list.get(1); // 1번째 인덱스 값을 가져옴
    System.out.println(rst); // 20
    값 삭제하기

    list.remove(1); // 1번째 인덱스 값을 삭제 . 이 지워진 인덱스 이후 값들로 땡겨진다.
    System.out.println(list.get(1)); // 30
    System.out.println(list.get(2));// remove 후 2번째 인덱스 없어짐 > 에러

    ArrayList의 크기확인
    System.out.println(list.size()); //2

    ArrayList 의  모든값을 출력
     마지막 인덱스는 항상 개수 -1
    for(int i = 0; i < list.size(); i++){
        System.out.println(list.get(i));
    }





}

}

0개의 댓글