Software Engineering/Java & JSP

[Java] 제2장 Java 기본 문법

iseop 2023. 4. 29. 17:12

주석과 식별자

  • 한 줄 주석은 '// ...', 여러 줄 주석은 '/* ... */'로 적는다.
  • '/** ... */' 주석은 javadoc 문서이다. 소스코드 맨 위에 작성하며, 클래스에 대한 설명을 기술한다.
  • 식별자는 숫자로 시작할 수 없다.
  • 식별자에는 특수문자를 쓸 수 없다. 단, '$'와 '_'는 허용된다.
  • 식별자는 camelCase로, 클래스 이름은 PascalCase로 표현한다.

상수와 변수형

  • 상수는 final int CONST_NUM = 0; 처럼 표현한다.
  • 상수는 대문자 SNAKE_CASE로 표현한다.
  • boolean, byte (char), short, int, long, float, double을 기본형 변수라 한다.
  • char 타입은 2바이트이다. '\u0000'부터 '\uffff'까지 표현할 수 있다.
  • 작은따옴표 'a'는 char 타입이고, 큰따옴표 "a"는 String 타입이다.
  • 정수는 기본적으로 int형이다. long형은 long l = 10l; 처럼 표현한다.
  • 실수는 기본적으로 double형이다. float형은 float f = 10.0f; 처럼 표현한다.
  • 작은 자료형에서 큰 자료형으로는 묵시적 형변환이 가능하다.
  • short s = 10; int i = s;
  • 큰 자료형을 작은 자료형으로 저장하려면 명시해야 한다.
  • int i = 10; short s = (short)i;

변수의 종류

  • 클래스에 선언된 변수 중 static으로 선언된 변수를 클래스 변수라 한다.
  • 클래스에 선언된 일반 변수는 인스턴스 변수라 한다.
  • 메소드 내부에서만 사용되는 변수는 지역변수라 한다.
  • 파라미터도 일종의 지역변수라고 할 수 있다.
  • 객체 변수의 초기값은 null이다.
  • 객체의 주소를 저장하는 변수를 참조형 변수라 한다.
  • java.lang.String은 참조형이지만, 기본형처럼 다루는 것이 가능하다.

for 반복문과 for-each 반복문

  • for 문의 용법은 C언어와 같다.
  • for-each 반복문은 아래와 같은 것이다.
int[] items = {1, 2, 3}; 
for (int item : items) { 
    System.out.print(item); 
}

 

배열

  • 배열은 int[] arr; 또는 int arr[]; 처럼 선언할 수 있다.
  • C언어와 달리 선언 시 크기를 미리 지정할 수 없다.
  • 배열을 선언했으면 생성도 해야 한다.
  • arr = new int[100]; 처럼 생성한다.
  • int[] arr = {1, 2}; 처럼 선언과 생성을 한 줄에 할 수 있다.
  • arr.length; 처럼 배열의 길이를 구할 수 있다.

문자열

  • 문자열은 java.lang.String 클래스의 인스턴스이다.
  • 문자열끼리 + 연산자를 사용하면 합쳐진다.
  • 문자열과 다른 타입을 + 연산자로 합치면 전부 String이 된다.

입출력

  • java.util.Scanner 클래스로 키보드나 파일 입출력이 가능하다.
// System.in를 생성자로 넣으면 키보드 입력을 받는다.
Scanner scanner = new Scanner(System.in); 

// new File("a.txt")를 생성자로 넣으면 a.txt로부터 입력을 받는다.
Scanner scanner = new Scanner(new File("a.txt")); 

// next() 메소드는 스페이스로 구분된 String 입력을 받는다.
String s = scanner.next();

// nextLine() 메소드는 줄바꿈으로 구분된 String 입력을 받는다.
String s = scanner.nextLine();

// nextInt(), nextDouble()로 정수 입력도 받을 수 있다.