본문 바로가기

자바 프로그래밍/강의 노트7

클래스와 객체C 메소드 클래스의 멤버 함수, C/C++의 함수와 동일, 자바의 모든 메소드는 반드시 클래스 안에 있어야 한다.(캡슐화) 메소드 구성 형식 접근 지정자 public, private, protected, default(접근 지정자 생략된 경우) 리턴 타입 메소드가 반환하는 값의 데이터타입 인자 전달 Pass - by - value, 인자의 값이 메소드의 매개변수에게 복사된다. 기본 타입의 값 전달 방식 매개변수가 byte, int, double 등 기본 타입의 값일 때 호출자가 건네는 값이 매개변수에 복사되어 전달된다. 객체 전달 방식 객체의 레퍼런스가 복사되어 전달된다. 매개 변수가 실인자 객체를 공유한다. 배열 전달 방식 배열 레퍼런스만 매개 변수에 전달된다. 배열이 전부 전달되지 않는다. 객체 전달 경.. 2023. 5. 15.
클래스와 객체B 생성자 객체가 생성될 때 초기화를 위해 실행되는 메소드 생성자의 특징 생성자의 이름은 클래스 이름과 동일하고, 리턴타입이 없는 것을 생성자로 간주한다. 생성자를 여러 개 작성가능하다. - 매개변수의 개수, 타입, 순서가 서로 달라야 한다. 생성자는 new를 통해 객체를 생성할 때, 객체당 한번 호출 가능하다. 그리고 리턴타입을 지정할 수 없다. 생성자의 목적은 객체 초기화, 객체가 생성될 때 반드시 호출된다. - 개발자가 생성자를 작성하지 않았으면 생성자가 자동으로 생성자가 삽입된다. 기본 생성자(default constructor) 매개 변수 없고, 아무 작업 없이 단순 리턴하는 생성자. 디폴트 생성자라고 부른다. This 레퍼런스 객체 자신에 대한 레퍼런스 - 컴파일러에 의해 자동 관리된다. this.. 2023. 5. 8.
클래스와 객체A length 필드 배열 객체 내에 length필드는 배열의 크기를 나타냄. for-each문 배열이나 나열(enumeration)의 각 원소를 순차적으로 접근하는데 유용한 for문 int[] num = {1,2,3,4,5} int sum = 0 for(int K : num) // 반복될 때 마다 k는 num[0], num[1],,,,, num[4]값으로 설정 sum += k System.out.println("sum " + sum) 레퍼런스 치환과 배열 공유 하나의 배열을 다수의 레퍼런스가 참조 가능 int intArray[] = new int[5] int maArray[] = intArray // intArray[1] = 2, myArray[1] = 6이면 6으로 덮어쓰기 된다. 2차원 배열 각 행은 .. 2023. 4. 24.