혼자 공부하는 Java ( 2주차 )

silver_bean·2022년 1월 23일
0

혼공단

목록 보기
3/16

2주차 미션

  1. p.330 문제 5번 실행 결과 인증 화면 캡쳐하기
  2. 객체 지향 프로그래밍의 개념을 정리하기

1. 문제 실행 결과 인증 화면

  • 부모클래스 Parent
public class Parent {

	public String nation;
	
	public Parent() {
		this("홈 스윗 홈");
		System.out.println("Parent() call");
	}
	
	public Parent(String nation) {
		this.nation = nation;
		
		System.out.println("Parent(String nation) call");
	}
}

상속이 되는 부모 클래스로 Parent()생성자가 먼저 실행,
안에 있는 this로 Parent(String nation)이 실행되고
필드에 있는 nation에 매개변수 nation으로 초기화 해준다.


  • 자식 클래스 Child
public class Child extends Parent{

	private String name;
	
	public Child() {
		this("Corgi");
		System.out.println("Child() call");
	}
	
	public Child(String name) {
		this.name = name;
		
		System.out.println("Child(String name) call");
	}
}

실행은 Parent 클래스와 같이 생성자에 매개변수로 필드 변수를.
하지만 Parent 클래스를 상속 받기 때문에
Parent의 생성자가 먼저 실행 후 다음으로 실행이 된다.


  • main
public class ChildExample {

	public static void main(String[] args) {
		Child child = new Child();
	}
}

Parent 클래스를 상속받은 Child 클래스를 child로 인스턴스를 만들게 되면

부모클래스 -> 자식클래스 순서대로 실행이 된다.



2. 객체 지향 프로그래밍의 개념

OOP (Object Oriented Programing)
: 특정한 개념의 함수와 자료형을 함께 묶어서 관리

  • 특징
    1. 추상화
      : 공통적인 특징을 하나의 집합으로 만들어 내는 것
    2. 캡슐화
      : 다른 객체에 자신의 정보를 숨기면서 외부의 접근을 제한하며 보호 가능
    3. 상속
      : 부모 클래스의 필드와 메소드를 자식 클래스에서 사용할 수 있도록 하는 것
    4. 다형성
      : 부모 클래스의 메소드를 자식 클래스가 overriding해서 자신의 역할에 맞게 활용
      한 클래스 내에서 같은 이름의 메소드를 overloading 하는 것
  • 클래스 (Class)
    객체를 생성하기 위한 필드와 메소드가 정의되어 있는 자바의 설계도
  • 객체 / 인스턴스 (Objects)
    클래스로부터 만들어진 객체
  • 메소드 (Method)
    객체의 동작에 해당하는 코드

학습 스케줄

  • 월 : CH.6 복습
  • 화 : CH.7~8 복습
  • 수 : CH.9 복습
  • 목 : CH.10 예외 처리
  • 금 : CH.11 기본 API 클래스
  • 토 : 전체 복습 및 코드 작성
  • 일 : 혼공단 미션

0개의 댓글