[Java] 템플릿 메서드 패턴 (Template Method pattern)
·
Java/Design Pattern
#  관련 포스팅  - 추상 클래스 : https://young0105.tistory.com/46 템플릿 메서드 패턴 (Template Method pattern)  - 추상 메서드 or 구현된 메서드를 활용하여, 코드의 흐름(시나리오)를 정의하는 디자인 패턴  - '행위' 디자인 패턴  - final로 선언함      → 자식 클래스가 해당 메서드에 대해 재정의할 수 없게 함 (메서드 오버라이드 금지)  - 프레임워크에서 자주 사용됨  - 부모 클래스에서 선언되어, 전체적인 흐름을 정의함      → 각 자식 클래스마다 다르게 구현되어야 하는 부분은 추상 메서드로 선언함      → 자식 클래스는 추상 메서드를 구체화함  - 전체적인 구조는 바꾸지 않으면서, 특정 단계에서 수행하는 내역을 바꿈// 부모..
[Java] 배열 - 오름차순 정렬
·
Java/Base
코드public class MainTest2 { public static void main(String[] args) { // 문제 : 배열의 요소를 오름차순 정렬하세요. int[] myNumbers = new int[10]; myNumbers[0] = 10; myNumbers[1] = 4; myNumbers[2] = 100; myNumbers[3] = 23; myNumbers[4] = 51; myNumbers[5] = 1; myNumbers[6] = 6; myNumbers[7] = 88; myNumbers[8] = 42; myNumbers[9] = ..
[Java] 추상 클래스
·
Java/Base
추상 클래스 (Abstract class)  - 하나 이상의 추상 메서드를 포함하거나, abstract 키워드를 가진 클래스  - 추상적인 개념      → 화면에 나타낼 수 없는 것들  ex) 게임  - 인스턴스화를 할 수 없음 (new 키워드 사용 불가)      → 오류 : 부모클래스 참조변수 = new 부모클래스();      → 업 캐스팅 가능 : 부모클래스 참조변수 = new 자식클래스(); // 추상 클래스접근제어자 abstract class 클래스명 { ... // 추상 메서드 접근제어자 abstract 반환자료형 메서드명(매개변수);}#  추상 메서드  - 구현 코드 없이 메서드의 선언만 있는 메서드 (중괄호 {}가 없음)  - 추상 클래스에 추상 메서드가 없을 수는 있음..
[Java] final 키워드
·
Java/Base
final의 기능 ① 상속할 수 없는 클래스 선언[접근제어자] final class 클래스명 { 코드;}   ex) String final의 기능 ② 재정의할 수 없는 메서드 선언[접근제어자] final 반환자료형 메서드명() { 코드;}   - 자식 클래스에서 오버라이드(재정의)할 수 없음 final의 기능 ③ 상수 선언final 자료형 상수명 = 값;   - 값이 변경될 수 없는 상수 선언  - 상수 관련 설명 : https://young0105.tistory.com/8
[Java] 문자열 자료형 (String)
·
Java/Base
String 자료형  - 문자열을 저장하는 자료형  - 반드시 쌍따옴표(" ")를 사용하여 값을 표기  - 변수를 이용해 객체를 따로 생성하지 않아도 자료형을 사용할 수 있음     (물론, 객체를 생성해서 사용할 수도 있음)#  이스케이프 문자  - 역슬래시(\)를 사용하여 문자열 내부에 특정 문자를 포함시킴 문법기능\t[Tab] 키만큼 띄움\n줄 바꿈\"" 출력\'' 출력\\\ 출력#  문자열의 값 비교 메서드문자열1.equals(문자열2);   - 문자열1과 문자열2의 '내용'이 완전히 동일하면 true 반환#  문자열의 주소 값 비교 연산자문자열1 == 문자열2;   - 문자열1과 문자열2의 '주소 값'이 동일하면 true 반환#  주소 값 확인System.out.println(System.ide..