목록Java/객체지향 (41)
충분히 쌓여가는
return 문 현재 실행 중인 메서드를 종료하고 호출한 메서드로 되돌아감 반환타입 void인 경우 return문 생략 가능 컴파일러가 메서드 마지막에 자동으로 return;을 추가해줌 -> return; 생략 가능 void printGugudan(int dan) { for (int i = 1; i < 9; i++) { System.out.printf("%d * %d = %d", dan, i, dan*i); } // return; // return문 생략 가능 } 입력받은 구구단 출력 public class MyMathTest { public static void main(String[] args) { MyMath mm = new MyMath(); mm.printGugudan(3); // 참조변수 mm,..
메서드 문장들을 작업단위로 묶어놓은 것 값(입력)을 받아서 처리하고, 결과를 반환(출력) 입력은 n개, 출력은 0~1개 출력이 많을 경우 배열이나 하나의 객체로 묶어야함 클래스 영역에만 정의 가능 메서드의 장점 코드의 중복을 줄일 수 있다 코드의 관리가 쉽다 코드를 재사용할 수 있다 코드가 간결해서 이해하기 쉬워진다 메서드의 작성 반복적으로 수행되는 여러 문장들을 메서드로 작성 하나의 메서드는 한 가지 기능만 수행하도록 작성 반환타입 메서드이름(타입 변수명, 타입 변수명, ...) { // 선언부 // 메서드 호출 시 수행될 코드// 구현부 } int add(int a, int b) { int result = a + b; return result; // 호출한 메서드로 결과를 반환 } 반환타입이 없는 경..
인스턴스 변수(instance variable) 개별 속성 클래스 영역에 선언되며, 클래스의 인스턴스를 생성할 때 만들어짐 -> 인스턴스 변수의 값을 읽어오거나 저장하기 위해서 인스턴스를 생성해야함 독립적인 저장공간을 가지므로 서로 다른 값을 가질 수 있다 인스턴스마다 고유한 상태를 유지해야 하는 경우 사용 클래스 변수(class variable) 공통 속성 모든 인스턴스가 공통된 저장공간(변수)를 공유하게 된다 한 클래스의 인스턴스들이 공통적인 값을 유지해야 하는 속성의 경우 사용 인스턴스를 생성하지 않고 언제라도 바로 사용가능 클래스가 메모리에 loading될 때 생성되어 프로그램이 종료될 때 까지 유지 public를 앞에 붙이면 같은 프로그램 내에서 어디서나 접근할 수 있는 전역변수의 성격을 갖게됨..
선언위치에 따른 변수의 종류(1. 클래스 영역, 2. 메서드 영역) 클래스 영역엔 선언문만 가능(변수 선언, 메서드 선언), 순서 상관없음 public class Variables { // 클래스 영역 시작 int iv; // 인스턴스 변수 static int cv; // 클래스 변수(static 변수, 공유 변수) void method() { // 메서드 영역 시작 int lv = 0; // 지역변수 } // 메서드 영역 종료 } // 클래스 영역 종료 변수의 종류 선언위치 생성시기 인스턴스 변수 (instance variable) 클래스 영역 인스턴스가 생성되었을 때(객체 생성 필수) 클래스 변수 (class variable) 클래스가 메모리에 올라갈 때(자동 생성) 지역 변수 (local varia..