[Study] Java, Spring-boot

치히로·2023년 11월 28일
0

Study

목록 보기
3/3

숙제 : 자바와 스프링부트 ★

1. JAVA

1) 객체 지향 언어

  • 기능을 객체 형태로 만들어 이를 결합하여 프로그램을 만들어 완성한다.

2) 단순성

  • C와 C++의 단점을 개선하여 불필요한 기능을 제거했다.

3) 이식성

  • 가상머신인 JVM (Java Virtual Machine)을 이용해 어떤 운영체제에서도 동일한 실행결과가 나오도록 설계했다.

4) 멀티 스레드 (Multi-Thread)

  • CPU를 최대한 활용하기 위해 2가지 이상을 동시에, 병렬적으로 실행할 수 있다.

5) 메모리 자동 정리

  • 자동으로 Garbage Collector가 사용하지 않는 메모리를 주기적으로 정리한다.

2. 객체 지향 언어

https://s-bug.tistory.com/57#2-1.%20%EA%B0%9D%EC%B2%B4%20%EC%A7%80%ED%96%A5%20%EC%96%B8%EC%96%B4%C2%A0-1

  • 멘토씨리즈 자바 도서 참고!

1. 캡슐화 / Encapsulation

1) 기능과 관련된 데이터를 하나의 클래스로 묶어 사용하여 정보를 은닉한다.

2) 접근 제한자 (Access Modifier)
public : 모든 패키지, 클래스에 접근 가능
protected : 같은 패키지 안에서 접근 가능, 다른 패키지라도 상속받은 자식 클래스라면 접근 가능
default : 같은 패키지 내의 객체에서 인스턴스를 생성하여 접근 가능
private : 같은 클래스 내에서만 접근 가능, 외부 접근 불가

2. 상속 / Inheritance

1) 부모 역할을 하는 클래스가 자식 역할을 하는 클래스에게 클래스 멤버와 메서드를 물려주는 것

2) 클래스를 재사용하기 때문에, 중복을 줄여주고 수정을 최소화한다.

3) 중복되는 필드가 생기기 때문에 다중 상속을 허용하지 않고, extends 뒤에 하나의 부모클래스만 허용한다.

4) 앞에 final 키워드를 붙이고 클래스명을 단 경우, 다른 클래스가 상속이 불가하다.

3. 추상화 / Abstraction

1) 객체에서 공통된 속성의 집합

2) 추상 메서드(abstract method)란,
다형성을 위해 메서드의 선언은 통일되어야 하지만 구현하는 내용은 자식마다 달라야 할 때,
부모 클래스의 메서드는 비워두고 자식 클래스에서 오버라이딩하여 구현하는데
메서드의 선언부만 작성하고 구현부는 남겨둔 미완성 메서드를 추상 메서드라고 한다.

4. 다형성 / Polymorphism

1) 하나의 타입으로 다양한 객체를 사용하는 것

2) 오버라이딩 @Override
상속받은 메서드를 변경해서 다시 구현하는 것
부모클래스와 메소드 이름, 반환타입, 매개변수와 동일해야 한다.

3) 오버로딩
한 클래스 내에서 같은 이름의 메소드를 여러 개 정의하는 것
같은 메소드 이름, 다른 매개변수 선언이어야 사용가능

3. Spring-boot

(작성예정)

🍞🍞🍞

0개의 댓글