[Java] 클래스와 데이터
·
Language/Java
☕ 클래스가 필요한 이유🍪 배열 사용의 한계String studentNames[] = { "학생1", "학생2", "학생3" }; int studentAges[] = { 15, 16, 17 }; int studentGrades[] = { 90, 80, 100 };한 학생의 데이터가 studentNames[], studentAges[], studentGrades[] 3개의 배열로 나누어져 있다.따라서 데이터를 변경할 때 매우 조심해서 작업해야 한다.사람이 관리하기 좋은 방식이 아니다. (→ 사람이 관리하기 좋은 방식은 학생이라는 개념을 하나로 묶는 것) ☕ 클래스 도입🍪 학생 클래스 정의public class Student { String name; int age; int grade;} 클래..
[Java] 자바 메서드
·
Language/Java
☕ 메서드 선언(Method Declaration)public static int add(int a, int b) 메서드의 선언 부분(메서드 이름, 반환 타입, 매개변수(파라미터) 목록 포함)메서드 선언 정보를 통해 다른 곳에서 해당 메서드 호출 가능public staticpublic: 다른 클래스에서 호출할 수 있는 메서드 (접근 제어)static: 객체를 생성하지 않고 호출할 수 있는 정적 메서드int add(int a, int b)int: 메서드 실행 결과를 반환할 때 사용할 반호나 타입 지정add: 메서드 이름(int a, int b): 파라미터(매개변수), 메서드를 호출할 때 전달하는 입력 값 정의, 해당 메서드 안에서만 사용되는 변수들 ☕ 메서드 호출호출: call("hello", 20)메서드..
[Java] Scanner로 입력 받기
·
Language/Java
☕ Scanner 클래스 사용package scanner;import java.util.Scanner;public class Scanner1 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("문자열을 입력하세요:"); String str = scanner.nextLine(); System.out.print("정수를 입력하세요:"); int intValue = scanner.nextInt(); System.out.print("실수를 입력하세요:"); double doubleValue..
[Java] 자바 연산자
·
Language/Java
☕ 자주 사용하는 연산자산술 연산자: + , - , * , / , % (나머지)증가 및 감소 연산자: ++ , --비교 연산자: == , != , > , = , 논리 연산자: && (AND), || (OR), ! (NOT)대입 연산자: = , += , -= , *= , /= , %= ☕ 연산자 우선순위괄호 ()단항 연산자 (예: ++ , -- , ! , ~ , new , (type) )산술 연산자 ( * , / , % 우선, 그다음에 + , - )Shift 연산자 ( > , >>> )비교 연산자 ( , >= , instanceof )등식 연산자 ( == , != )비트 연산자 ( & , ^ , | )논리 연산자 ( && , || )삼항 연산자 ( ? : )10. 대입 연산자 ( = , += , -= ,..
[Java] 자바 변수
·
Language/Java
🍪 패키지(package)자바 파일을 구분하기 위한 폴더 (추후 자세히 공부)variable라는 패키지를 만들었다면, 해당 패키지에 들어가는 자바 파일 첫 줄에 package variable;와 같이 소속된 패키지를 선언해주어야 함자바 파일이 위치하는 패키지와 package variable 선언 위치가 같아야 함 🍪 변수 타입int: 정수double: 실수boolean: 불리언 타입 / true, falsechar: 문자 하나 / 작은따옴표(’)로 감싸야함String: 문자열 / 큰따옴표(”)로 감싸야함cf. String은 첫 글자가 대문자로 시작하는 특별한 타입 (클래스 배우면 이해 가능) 🍪 리터럴코드에서 개발자가 직접 적은 고정된 값을 프로그래밍 용어로 리터럴(literal)이라고 함int a..
[Java] 자바 이론 정리
·
Language/Java
☕ 자바 프로그램 실행public class HelloJavaHelloJava 클래스 생성파일명과 클래스 이름이 같아야 함{} 블록을 사용해서 클래스의 시작과 끝을 나타냄public static void main(String[] args)main 메서드자바는 main(String\[\] args) 메서드를 찾아서 프로그램을 시작{} 블록을 사용해서 메서드의 시작과 끝을 나타냄System.out.println("hello java");System.out.println(): 값을 콘솔에 출력"hello java": "(쌍따옴표) 사이에 원하는 문자열을 감쌈;: 세미콜론으로 문장 구분 ☕ 자바 표준 스펙과 구현🍪 자바 표준 스펙자바는 이렇게 만들어야 한다는 설계도이자 문서임이 표준 스펙을 기반으로 여러 회사..
[Spring] Name for argument of type [java.lang.String] not specified, and parameter name information not available via reflection. Ensure that the compiler uses the '-parameters' flag.
·
WEB/error
🚨 문제 상황심각: 경로 [/spring_ws_08_2]의 컨텍스트 내의 서블릿 [appServlet]을(를) 위한 Servlet.service() 호출이, 근본 원인(root cause)과 함께, 예외 [Request processing failed: java.lang.IllegalArgumentException: Name for argument of type [java.lang.String] not specified, and parameter name information not available via reflection. Ensure that the compiler uses the '-parameters' flag.]을(를) 발생시켰습니다.java.lang.IllegalArgumentExcept..
[Java] 자바 문자열 특정 위치에 문자 삽입하기
·
Language/Java
SWEA 2027. 대각선 출력하기 문제를 풀기 위해 찾아봤다. 자바 문자열에서 index로 중간에 문자를 삽입하기 위해서는 String 타입을 쓰면 안 된다. StringBuffer를 이용하면 insert로 문자열의 중간에 다른 문자를 삽입할 수 있다. for (int idx = 0; idx < 5; idx++) { StringBuffer sb = new StringBuffer(); sb.append("++++"); sb.insert(idx, "#"); System.out.println(sb); } 아래 같은 출력 결과를 확인할 수 있다~!