-
생성자인스턴스가 생성될 때 호출되는 '인스턴스 초기화 메서드'이다.인스턴스 생성 시에 실행되어야 할 작업을 위해서도 사용됨. 조건1. 생성자의 이름은 클래스의 이름과 같아야 한다.2. 생성자는 리턴 값이 없다. 기타사항1. 생성자도 오버로딩이 가능하므로 하나의 클래스에 여러 개의 생성자 존재 가능.2. 해당 클래스 내에 생성자가 하나도 없다면 컴파일러가 기본생성자를 추가하여 컴파일한다.3. 생성자가 하나 있다면 기본생성자 추가 안함.4. 생성자 안에서 다른 생성자를 생성하려면 this() 혹은 this(매개변수들...)을 사용하면 됨. 수행 과정1. 연산자 new에 의해서 메모리(heap)에 해당 클래스의 인스턴스가 생성됨.2. 생정자가 호출되어 수행됨3. 연산자 new의 결과로, 생성된 해당 클래스의 ..
암호코드https://www.acmicpc.net/problem/2011 언뜻 보면 쉬운 dp문제처럼 보이는데.. 예외로 처리해줘야 할 사항들이 몇가지 있다.나는 그 사항들을 체크하지 않아 엄청 많이 틀렸다. 주어진 입력이 해석 가능한 숫자조합인지 꼭!!! 체크한 뒤 제거해 줘야 한다.체크해줘야할 사항들로는1. 0으로 시작하는 경우2. 0이 연속으로 나오는 경우3. 0 앞에 3~9의 숫자가 나오는 경우4. 그리고!! 출력은 10000000으로 나눈 나머지를 출력할것! 잊지말자. 이 모든 예외들을 처리해 준 후 dp[i] = dp[i-1] + dp[i-2](S.charAt(i) > '0' && (S.charAt(i-1) == '1' || ( S.charAt(i-1) == '2' && S.charAt(i) ..
절차적 프로그래밍(Procedural Programming)- 단순히 순차적인 명령 수행이 아니라 루틴, 서브루틴, 매서드, 함수등(이를 통틀어 프로시저라고 한다.)을 이용한 프로그래밍 패러다임을 뜻한다.- Procedural은 단순히 '절차'를 뜻하는 것이 아니라 '프로시져'의 의미를 가진다. - 다시 말해 이 패러다임에서는 함수 호출을 통해서 추상화와 재사용성을 얻어내는것(프로시져 콜)이 본질이다. 특징- 시간의 관점에서 프로그래밍함. 명령어 한 줄씩 따라가며 실행됨.- 프로시저를 호출하는 것은 그냥 코드를 쓰는 것 보다 시간이 더 소모됨.(인라인 하는 것 보다 시간이 많이 걸림.)- 반복적인 일들을 모듈화함으로써 코드를 재사용할 수 있지만, 많은 경우 코드의 수정이 필요함.- 과학계산, 하드웨어의 ..