1.파라미터 (Parameter)
+ 인수 (Argument)
<p> 1)메소드에게 전달하는 값을 의미한다.
<p> 2)메소드를 호출할 때 전달할 수 있다.
+ 파라미터 (Parameter)
<p> 1)인수를 받아서 저장하는 변수이다.
<p> 2)매개변수라고도 한다.
+ 메소드 오버로딩(Overloading)
<p> 1.같은 이름을 가지고 있는 메소드를 여러개 만들 수 있다는 의미이다.
<p> 2.메소드 오버로딩의 조건
1)메소드 이름이 같다.
2)파라미터가 반드시 달라야 한다.(개수가 다르거나, 타입이 다르거나)
ex)
{
print(a);
print(b);
}
public static void print(int a, int b)
{
System.out.println(a+" "+b);
}
public static void print (int a) {
System.out.println(a);
}
public static void print (double a) {
System.out.println(a);
}
1. 메소드를 전달하는 인수의 타입이 동일하지만, 갯수가 여러개인 경우에 사용할 수 있다.
2. 말 줄임표는(...)를 활용한다.
3.말 줄임표로 선언된 변수는 배열로 처리한다.
반환(return)
메소드의 실행 결과 값을 의미한다.
반환값이 없는 메소드는 void 키워드를 사용한다.
2.이런 경우 return 키워드를 이요해서 메소드 실행을 종료할 수 있다.
return 키워드만 작성해야 한다.
void 메소드 에서만 사용할 수있다.
3. 클래스(class)
객체를 정의하는 틀 또는 설계도
필드(field),메소드(Method)로 구성된다.
4.접근 제어 지시자(Access Modifier)
public :어디서든 접근 가능한 인스턴스 변수 및 메소드
private :같은 클래스 내부에서만 접근 가능
protected:동일 패키지나 상속관계의 클래스에서만 접근 가능하고 그 외 외부에서는 접근 불가
default:접근 제어 지시자를 선언하지 않은 경우, 동일 패키지 내에서만 접근 가능(상속 관계라도 패키지가 다르면 접근 불가)
정보은닉(Information Hiding)
1. 객체가 가진 내부 정보 (필드) 를 외부에 직접 노출하지 않는다.
2.외부로부터 내부 정보(필드) 를 숨김으로써 정보를 안전하게 관리할 수 있다.
3.Java에서는 정보 은닉을 위해서 private 처리하고, 메소드는 public 처리한다.
4.java에서는 메소드를 통해서 필드에 접근한다.(필드에 직접 접근할 수 없다)
Getter 와 Setter
1.Getter
1)필드값을 외부로 반환(return)하는 메소드
2)"get+필드명" 형식의 이름을 가지는 메소드
3) 메소드 이름을 마음대로 바꾸면 안된다.
2.Setter
1)외부로부터 받아 온 값(파라미터)을 필드에 저장하는 메소드이다.
2)"set+필드명" 형식의 이름을 가지는 메소드이다.
3) 메소드 이름을 마음대로 바꾸면 안된다.
5.필드(fied)
1.객체가 가질 수 있는 값을 저장할 변수이다.
2.클래스에서 선언한다.
3.필드는 자동으로 초기화 된다.(0,0,0,false,null)
생성자(constructor)
디폴트 생성자(default constructor)
1.개발자가 생성자를 하나도 만들지 않는다면 Java가 자동으로 만드는 생성자이다.
2.파라미터가 없고, 본문이 비어있다.
3.기본필드값(0,0.0,false,null)을 가진 객체를 생성할 때 사용한다.
static
인스턴스(instance)
인스턴스 멤버(instance member)
1. 인스턴스가 사용할 수 있는 멤버(필드, 메소드)이다.
2. 인스턴스가 호출 할 수 있다.
클래스 멤버(class member)
1. 정적 멤버(static member)을 의미한다.
2.static 키워드가 추가된 멤버(필드,메소드)이다.
3.인스턴스가 생성되기 이전에 (객체를 만들기 전,new 이전)사용할 수 있다.
4.클래스 멤버는 인스턴스 생성 이전에 미리 메모리에 로드된다.
5. 클래스마다 1개씩만 메모리에 로드된다.(모든 인스턴스가 공유할 수 있다)
6.클래스를 이용해서 호출한다.(인스턴스를 만든 후 인스턴스로 호출할 수도 있지만 권장하지 않는다.)
7.클래스 멤버는 다른 클래스 멤버에서 참조될 수 있다.
정보 감사합니다.