객체지향프로그래밍
객체?
의사나 행위가 미치는 대상
구체적, 추상적 데이터 단위
객체를 정의
객체의 기능을 정의
클래스란?
객체를 코드로 구현한것
클래스를 정의한다
객체에 대한 청사진
객체가 하는 기능들을 메서드로 구현
메인 메소드
public ststic void main(string[ ] args){
}
class 이름은 대문자로 시작
pakage 이름은 소문자로 시작
메서드란?
함수의 일종
객체의 기능을 제공하기 위해 클래스 내부에 구현되는 함수
함수란?
하나의 기능을 수행하는 일련의 코드
중복되는 기능은 함수로 구현하여 중복되는 기능은 함수로 구현하여 함수를 호출하여 사용함
함수는 입력과 출력있음
결과는 반환값
함수이름 매개변수 선언한다
객체를 생성해서 쓴다
참조변수
클래스형 변수이름 = new 생성자
인스턴스 여러개 생성
인스턴스는 힙메모리에 생성이 된다.
함수는 Stack 메모리에 생성 호출되면 지역변수가 쌓인다
함수가 끝나면 자연히 없어짐
Stack메모리가 Heap의 주소를 가리키고있다
Heap 메모리는 동적으로 생성되는 메모리
new 라는 키워드에서 생성
자동으로 없어지지 않는다
가비지 콜렉터가 없애줌
참조 자료형
정보은닉
private 접근 제어자
public 이랑 무슨 차이?
this 가 하는일
자신의 메모리를 가리킴
생성된 인스턴스 스스로를 가리키는 예약어
자기 자신을 반환한다
객체의 협업
댓글