2019/04/07 4

자바 배열

예를들어 1부터 10까지의 숫자들 중 홀수들의 모임은 1,3,5,7,9 라는 집합을 이라고 해보자. int[] odds = {1,3,5,7,9}; 이렇게 표현할 수있고, 배열은 자료형 타입 바로 앞에 [ ] 기호를 사용하여 표현한다. 배열의 길이는 고정되어 있다. String[] weeks = new String[7]; weeks[0] = "월"; weeks[1] = "화"; weeks[2] = "수"; weeks[3] = "목"; weeks[4] = "금"; weeks[5] = "토"; weeks[6] = "일"; 배열의 길이만 설정하여 변수를 먼저 생성한 다음 그 값은 나중에 대입하는 방법이다. 단, 위 예처럼 초기값 없이 배열 변수를 만들때에는 반드시 길이값이 필요하다. String[] weeks ..

java/자료형 2019.04.07

인스턴스 멤버 vs 정적 멤버(static member)

클래스 멤버는 인스턴스 멤버와 정적 멤버로 나누어진다. 인스턴스 맴버와 같은 경우는 동일한 클래스를 이용하여 많은 객체들이 생성될때 각각의 객체(인스턴스)들은 자신만의 필드를 가진다. 이들 필드는 인스턴스 마다 별도로 생성되기 때문에 인스턴스 변수(instance variable)라고도 한다. 각 객체는 이들 변수에 대하여 독립적인 기억 공간을 가지고 있으며 각기 다른값을 가지고 있다. (콘솔창에 출력된 값을 보면 Dog@15db9742 등등 각각 다른 특이한 값이 나오는데 이것이 주소값이다. 즉 이 뜻이 독립적인 기억공간을 가지고 있는 것이고 각기 다른값을 가지고있다는 뜻이다.) 정적 변수(class variable)는 클래스 당 하나만 생성되는 변수이다. 정적 변수를 만들려면 변수를 정의할 때 앞에 ..

접근자와 설정자

객체 지향 방법의 개념 중에 정보은닉(Information hiding)이 있다. 정보 은닉이란 구현의 세부 사항을 클래스 안에 감추는 것이다. 대표적인 것이 클래스 안의 데이터를 외부에서 마음대로 변경하지 못하게 하는 것이다. 따라서 클래스 안에 변수를 선언할 때는 private을 붙이는 것이 좋다. private를 붙이게 되면 외부로부터의 접근이 차단된다. 그렇기 때문에 이 경우에는 어떤 특수한 메소드가 있어 이들 메소드가 데이터값을 읽어서 외부로 전달해주면 좋을 것이다. 필드와 관련된 두 가지의 종류의 메소드가 있다. 하나는 필드값을 반환하는 접근자(getters)이고 또 하나는 필드값을 설정하는 설정자(setters)이다. 이러한 메소드는 대게 get이나 set이 메소드 이름 앞에 붙여진다. 예를..

java 2019.04.07