🌿 기본 환경: IDE: STS, Language: Java

 

 

발생 Error

Spring에서 다음 Source Code를 실행할 경우,

⭐ 하기 Error 발생

nested exception is org.springframework.beans.BeanInstantiationException:
Failed to instantiate [sample01.MessageBeanImpl]: No default constructor found;
nested exception is java.lang.NoSuchMethodException: sample01.MessageBeanImpl.<init>()

 

 

발생 원인

Class 내부에 기본 생성자를 제외한 생성자를 작성한 경우, 기본 생성자가 자동으로 생성되지 않음

기본 생성자가 만들어지지 않은 상태에서 호출되었으므로 BeanInstantiationException 발생

 

 

해결 방법

1. 기본 생성자가 자동으로 생성될 수 있도록 추가 생성자 삭제

2. 기본 생성자 추가 작성

3. 만일 1개 이상의 인자를 받는 생성자를 작성한 경우, .xml에 객체 생성 시 해당 개수만큼 Constructor 선언 필요

 

 

이 글은 남궁성의 정석코딩 [자바의정석-기초편] 수강하며 정리한 글입니다.

 

 

🟣 기본 환경: IDE: Eclipse, Language: Java

 

 

객체: 의사나 행위가 미치는 대상, 문장 내에서 동사의 행위가 미치는 대상, 작용의 대상이 되는 쪽

 

객체지향언어 = 프로그래밍 언어 + 객체지향개념(규칙)

 

 

다형성(Polymorphism)

: 같은 이름의 메서드가 클래스 혹은 객체에 따르 다르게 동작하도록 구현되는 것

개념적으로 동일한 작업을 하는 메서드에 동일한 이름을 부여하여 코드의 중복 방지

(OverLoading - 이름이 동일한 메서드가 하나의 클래스 안에서 중복 정의된 경우

, OverRiding - 상속받은 메서드를 하위의 클래스에서 재정의된 경우)

 

 

캡슐화(Encapsulation)

: 데이터와 메서드를 하나로 묶은 것으로 접근 제어자를 통해서 객체 외부에서 객체 내부로의 직접적인 접근을 막고 외부에서 접근할 수 있도록 정의된 메소드를 통해서만 관련 데이터에 접근할 수 있도록 한 것

(getter, setter)

 

 

상속(Interitance)

: 하나의 클래스가 상위 클래스의 모든 속성 및 메소드를 상속 받는 개념

 

 

추상화(Abstraction)

: 공통적인 특징을 찾아내어 클래스를 설계하는 것으로 객체지향적 관점에서 클래스를 정의하는 것

 

 

 

소스 코드

🔗 HJ0216/java-practice

 

참고 자료

📑 [Java/독학] 자바 객체지향의 모든 것 (클래스, 메소드, 객체, 인스턴스, 리턴값, void)

📑 Java 자바 객체지향 특징 : 캡슐화, 상속, 다형성, 추상화

📑 자바 getter, setter 알아보기

 

이 글은 남궁성의 정석코딩 [자바의정석-기초편] 수강하며 정리한 글입니다.

 

 

🟣 기본 환경: IDE: Eclipse, Language: Java

 

 

이중 배열

 

 

printf 사용법

%d: 10진법 정수

%5d: 10진법 정수, 오른쪽 정렬 5자리수(지정자리수보다 큰 숫자는 그대로 출력, 절삭X)

%-5d: 10진법 정수, 왼쪽 정렬 5자리수

%05d: 10진법 정수, 오른쪽 정렬 5자리수, 빈 공간 0으로 채움

 

%x: 16진법 정수, 알파벳 소문자 출력

%X: 16진법 정수, 알파벳 대문자 출력

 

%f: 실수(float, double 모두 가능)

%6.2f: 실수, 오른쪽 정렬 소수점 2자리 및 '.' 포함 총 6자리수 출력

 

 

%s: 문자열, 알파벳 소문자 출력

%S: 문자열, 알파벳 대문자 출력

 

* %문자의 개수보다 입력한 상수가 많을 경우, 나머지 상수는 무시

 

 

이중배열 활용

 

 

String class 주요 method

 

 

Cf. equals/deepEquals의 차이

 

 

Cf1. Assert - 추후 공부

Cf2. 메서드를 자세히 보고 싶으면 Step Into 활용

Cf3. 동영상 참조 또는 해당 메스드로 디버깅 해보기

 

 

 

소스 코드

🔗 HJ0216/java-practice

 

이 글은 남궁성의 정석코딩 [자바의정석-기초편] 수강하며 정리한 글입니다.

 

 

🟣 기본 환경: IDE: Eclipse, Language: Java

 

 

배열 생성 방법

1.

String[] strArr = new String[5]; // 배열 길이: 5

strArr[0] = "수";

strArr[1] = "우";

strArr[2] = "미";

strArr[3] = "양";

strArr[4] = "가";

 

2.

String[] strArr = new String[] {"수", "우", "미", "양", "가"};

 

3.

String[] strArr = {"수", "우", "미", "양", "가"};

 

 

중복값 없는 배열 만들기

 

배열 간 자리 바꾸기

 

배열 요소(Argument)

1. Eclipse에서 Run Configuration-arguments에서 직접 입력

2. cmd에서 class 파일이 위치한 폴더에서 java 파일명 argument 직접 입력

- javac java파일명 입력을 통해서 class 생성 가능

- class 파일의 위치: alt + Enter

- cmd 실행 후, cd 파일 위치 경로 입력

- dir: 해당 폴더 내 파일 확인

 

- java 파일명 argument

* ' ' 스페이스바 1칸으로 구분하지만, ""로 묶어줄 수 있음

 

 

 

소스 코드

🔗 HJ0216/java-practice

 

이 글은 남궁성의 정석코딩 [자바의정석-기초편] 수강하며 정리한 글입니다.

 

 

🟣 기본 환경: IDE: Eclipse, Language: Java

 

 

반복문에서의 break

 

반복문에서의 continue

 

조건문 및 반복문 종합

 

조건문 및 반복문 통합

 

 

 

소스 코드

🔗 HJ0216/HJ0216/java-practice