객체지향 프로그래밍:객체를 대상으로 프로그램을 만드는 것
-수행 작업을 객체들간의 상호작용으로 표현
클래스:객체의 속성과 기능을 코드로 구현한 것
-클래스 이름은 대문자로 시작
-맴버변수,메소드,생성자
public class A{
int field1; //멤버변수
A(){...} //생성자
void method1(){...} //메소드
}
함수:하나의 기능을 수행하는 코드 = 메소드
public int function(int var1,int var2){
...
return result;
}
리턴타입과 실제 리턴값이 일치해야한다.
return의 의미:
1.결과를 반환
2.메소드 종료
메모리 구조 - 선입후출 구조
인스턴스
참조자료형-직접 만들어서 사용, 주소를 저장
1.인스턴스 생성
Student student1 = new Student();
2.도트연산자 사용하여 멤버변수와 메소드 사용
student1.studentName;
생성자: 클래스 객체를 생성하며, 멤버변수를 초기화한다.
생성자메소드 이름은 클래스명과 같다
호출되면 메모리에 인스턴스 생성하고 객체의 주소를 리턴한다
정보은닉-접근제한자
접근제한자 | 제한범위 |
private | 오직 클래스 내에서 사용 |
default | 동일 패키지 아래 클래스에서 사용 |
protected | 동일 패키지 아래 클래스 또는 자식 클래스 |
public | 모든 타 클래스 |
this:클래스 내부 자기자신
static
- 클래스에서 공통으로 사용하는 멤버는 static변수로 선언
-static메소드에서는 static변수만 사용 가능