오버로딩

    [Java] Java Class 및 Object #2 - 생성자와 변수 초기화

    Class 어떠한 물체를 코드로 구현해 추상화시킨 개념. Object 추상화시킨 개념인 Class가 구체적인 실체로 만들어진 것. 지난번 글에서는 Java 클래스와 객체에 대해 설명했고 이어서 변수의 종류와 생성 시기를 이야기했습니다. 이번 글에서는 클래스 생성자와 변수들의 초기화 과정에 대해 이야기해보겠습니다. 생성자 선언하기 생성자란 인스턴스가 생성될 때 호출되는 "초기화 메소드" 입니다. 인스턴스가 new를 통해 생성될 때 자동으로 가장 먼저 호출되는 클래스의 메소드이기 때문에 보통 초기화 과정을 작성합니다. 그렇다면 직접 코드에서 어떻게 작동을 하는지 알아보겠습니다. 이전 글에서 사용했던 Animal 클래스와 main 메소드를 참고하겠습니다. Animal 클래스의 기타 메소드들은 생략했다는 점 알..

    [C++] 구조체 생성자 오버로딩 Struct Constructor Overloading

    구조체 생성자란? 구조체를 생성과 동시에 내부 변수들의 값을 초기화 시키는 함수. C++에는 구조체와 비슷한 클래스가 존재하기 때문에 OOP(Object Oriented Programming)를 위해선 보통 클래스를 사용합니다. 하지만 프로젝트가 아닌 일반적인 알고리즘 문제를 풀 때는 구조체를 많이 사용하는데, 이를 위한 기능들을 소개해드리겠습니다. 일반적인 생성자를 따로 선언하지 않는 경우에는 아래와 같이 사용합니다. 하지만 알고리즘 문제를 풀다보면 vector, queue, stack 등 여러가지 자료구조에 구조체 템플릿을 선언해야할 때가 있습니다. 위와 같은 방법을 사용하게 되면 구조체 임시 변수를 하나 선언해놓고 값을 넣은 후, 자료구조에 다시 넣어줘야하는 번거러운 작업이 필요합니다. #inclu..