본문 바로가기
자바 Java/Java 프로그래밍

Java 객체지향 & 클래스 & 생성자

by udeserveit1 2024. 7. 9.

객체 지향 특성 

1. 캡슐화 : 객체를 캡슐로 싸서 내부를 볼 수 없게 하는 것 ,틀, 외부의 접근으로부터 객체 보호

 

2. 상속 :  상위 개체의 속성이 하위 개체에 물려짐

               부모 클래스 : 수퍼 클래스

               하위 클래스 : 서브 클래스, 수퍼 클래스를 재사용하고 새로운 특성 추가

 

 3. 다형성 : 같은 이름의 메소드가 클래스나 객체에 따라 다르게 동작하도록 구현

 

 

 

객체 지향 언어의 목적 

 

1. 소프트웨어의 생산성 향상

 

2. 실세계에 대한 쉬운 모델링

 

 

 

 

 

 

클래스 

- 객체 만드는 설계도

- 객체의 속성 (변수)과 행동 (메서드)

- 객체 = 인스턴스

 ex) 클래스 : 소나타 자동차,    객체 : 출고된 소나타 100대 

       클래스  : 사람,                객체 : 나 ,너 ,옆집사람

 

클래스 구성

 

클래스 구성 설명

 

객체 생성과 접근

 

 

생성자

 

-  다형성 특징 중 하나

객체가 생성될 때 초기화를 위해 실행되는 메소드

 

생성자의 특징

 

- 생성자는 메소드

- 클래스 이름과 동일

- 여러 개 작성 가능

 

 

 

개발자가 클래스에 생성자 하나라도 작성한 경우 

-기본 생성자 자동 삽입되지 않음

 

 

This 레퍼런스

- this.멤버 형태로 멤버 사용

 

 

 

 

this 쓰는 경우

 

다른 메소드 호출시 자신의 전달할 때 --->this는 자신이다 .

 

this() 다른 생성자 호출

 

 

 

이것을

 * 객체 치환

 

객체 치환은 객체가 아닌 레퍼런스가 복사된다.

 

*객체 배열 

객체 배열 생성

 

 

객체 배열 선언 과 생성 과정

 

 

 

 

인자 전달 - 기본 타입 전달

 

 

인자 전달-객체 전달

객체 레퍼러슨 공유 !-> 값이 바뀜

 

 

메소드 오버로딩

- 이름이 같은 메소드 작성

 

객체 소멸 

 

 

 

가비지 사례

 

c언어 와 달리 알아서 지워줌 

 

*접근 지정자

 패키지 

 

4가지 

- private, protected, public, 디폴트(접근지정자 생략)

목적

- 클래스나 일부 멤버 를 공개하여 다른 클래스접근 ㅓ용

 

접근 지정자에 따른 클래스나 멤버의 공개 범위

접근 지정 

디폴트 클래스 a

- 누구나 다 쓸 수 없고 내가 쓴 패키지 내에서만 쓰고 싶을 때

퍼블릭 클래스 b

- 누구나 접근 가능 

 

퍼블릭은 같은 패키지에 있으

멤버 접근 지정자의 이해
멤버 접근 지정자의 이해

 

protected  : 동일 패키지와 자식클래스

 

 

* stactic과 non-static 

class에서 생성된 객체들이 공유하고 있는 변수 

 

*final 

상수값으로  만드는 것 

 

'자바 Java > Java 프로그래밍' 카테고리의 다른 글

자바 개념  (0) 2024.08.10