210316
[오버로딩(Overloading]
-같은 이름의 메소드를 중복해서 정의하는 것
-메소드 이름은 같지만 파라미터 타입이나 갯수가 달라야 한다.
예)
class AA {
int add(int x, int y){...}
int add(int x, int y, int z) {...}
}
this:객체 자신을 의미(객체 자신의 메모리 주소값)
[static]
1. static 메소드
- 일반 멤버메소드는 객체를 생성한 후에 사용할 수 있지만 static 메소드는 객체 생성 없이 (**클래스명으로 호출해서 사용)한다.
- 일반멤버변수(인스턴스변수)는 사용할 수 없고 static 멤버만 사용할 수 있다.
- this는 사용할 수 없다.
- 만드는 방법:리턴형 앞에 static을 붙인다.
- 인스턴스 변수를 사용하지 않는 독립적인 기능의 메소드를 만들 때 static 메소드를 만들어 사용한다.
- static 멤버변수(클래스변수)
-인스턴스변수는 객체의 수만큼 생성되지만 static멤버변수는 객체의 수와 상관없이 오로지 하나만 생성되어 모든 객체가 공유해서 사용한다.
-만드는 방법:멤버변수 앞에 static을 붙여서 만든다.
-인스턴스변수는 객체를 new로 생성하는 순간에 만들어지지만 static 멤버변수는 new로 생성하지 않아도 클래스가 로딩되는 순간에 생성된다.