카테고리 없음

20240726 개발공부

llmmhh 2024. 7. 26. 22:32

Java 의 특징 (객체지향)

 

캡슐화

노출 위험 적다. 안정성

 

상속 

필드와 메서드를 자식에게 물려줄 수 있다.

ex. 기계 부품이라는 부모 객체가 있다면

그 객체는 자동차,비행기 등 공통적으로 사용되는 객체에 부모 객체가 될 수 있다. ( 가져다 쓰기 좋다)

 

다형성

고유한 특성에 따라 여러가지 형태로 재구성 되는것.

객체에 따라 같은 행위도 다르게 구현 가능하다. (메서드 차이)

 

추상화

객체마다 공통된 부분들을 모아 상위 개념으로 새롭게 선언하는것.

아마도 AI가 무언가 만들때 참고할 자료,

알고리즘 같은것 들이 생각난다.

사람도 객체로 본다면, 20대 남성들 특징(객체)을 모아 1개의 추상적인 남성 객체를 만드는게 가능하지 않을까 싶다.

 

 

객체와 클래스

객체는 이미 구성된 것이고,

클래스는 객체를 생성하기 위한 설계도다.

클래스 통해 생성된 객체를 해당 클래스의 "인스턴스" 라고 한다.

과정은 '인스턴스화'

 

클래스를 만들기 위한 4가지

 

클래스 선언(설계도 이름)

public class Car {}

public 공개된 ( 공개하지 않으려면 private 을 쓰면 된다. 구글링 참고함! )

class 클래스

Car 클래스 이름

 

 

필드 정의(구성 요소)

각 타입별 변수를 선언한다.

변수에 값을 넣을 때마다 선언한 클래스를 가져다 쓸 때, 그 값이 적용된다.

변수에 값을 입력하면 기본형 매개변수와 참조형 매개변수가 다르게 적용하는데

기본형 - 그 순간만 적용

참조형 - 아예 값 자체를 수정

 

 

 

생성자 (생성 방식??? 버튼 클릭 등??)

생성자는 아직 기본 생성자에 대해서만 배웠다.

@ Car() :

@ 자리는 pubilc private 자리.

Car 는 생성자 이름이고 클래스의 이름과 동일

 

메서드 (행위)

double gasPedal(double kmh) {

     speed = kmh;

     return = speed;

}

 

반환하는 타입이 double 인 gasPedal( double kmh)를 선언한 것.

double 타입의 kmh 라는변수(기본형)

speed는 필드값인데 그 필드값에 kmh 라는 변수 값을 저장.

speed 값을 리턴!

즉, double gasPedal(double kmh) 라는 행위는

kmh를 speed에 저장하는 행위.

 

객체.qweqwe('p') 은 객체의 qweqwe 값이 p라는것.(선언?저장?)

"." 이 "객체의" 를 뜻하는것 같다!