
오늘 하루는 Java 언어와 그 주변의 객체지향 프로그래밍 지식에 깊이 몰두한 날이었다. 숫자 야구 게임과 간단한 계산기 프로그램 구현을 통해, Java의 핵심 원칙을 실제로 응용해 보는 경험을 했다. 특히 객체의 생성과 초기화, 그리고 클래스의 설계와 관계 설정에 집중하며, 각 객체와 클래스가 서로 어떻게 상호작용하는지 명확히 파악했다.
이러한 기본적인 원칙을 바탕으로, 인스턴스와 클래스의 차이, 생성자의 활용, 접근 제어자의 중요성, 그리고 패키지와 임포트의 사용법 등 다양한 Java의 특징들을 체험하고 이해하였다. 특히 상속, 오버라이딩, 다형성과 같은 객체지향의 핵심 개념을 깊이 있게 다루면서, 이러한 원리가 실제 프로그래밍에서 어떻게 응용되는지 보았다.
추상 클래스와 인터페이스는 Java의 다형성을 이해하는 데 중요한 역할을 한다. 이를 통해 다양한 구현 방식과 확장성 있는 설계의 중요성을 배웠다. 디폴트 메서드와 static 메서드를 활용하면서, 인터페이스의 새로운 가능성을 탐구하였다.
디자인 패턴에 대한 학습을 통해, 효과적인 프로그램 설계와 유지 보수의 중요성을 깨달았다. 특히, 재사용 가능한 코드를 작성하는 데 있어서 디자인 패턴의 역할은 무척 중요하다는 것을 인지하였다.
오늘의 학습을 통해, Java 프로그래밍의 깊은 세계에 대한 열정과 흥미를 다시금 느꼈다. 앞으로 이러한 지식을 기반으로 더 복잡하고 창의적인 프로젝트에 도전하고 싶다는 생각이 든다. 내가 직면하게 될 문제를 지금까지 배운 내용을 어떻게 실제 문제 해결에 접목시킬 수 있을지 꾸준히 생각하며, 매일 매일 성장하는 길을 걸을 것이다