Programing🤖/JAVA

[JAVA] 기본사항 이해하기

nayeo2 2024. 8. 23. 11:25
  • 자바의 특징
    1. 객체지향 언어
    2. 플랫폼 독립적(아키텍처 중립적)
    3. 멀티스레드 지원
    4. 분산 환경
    5. 간단한 코드
    6. 뛰어난 보안성
    7. 고성능
    8. 모듈화

<절차 지향 vs 객체 지향>

1. 절차 지향 프로그래밍

  • ex) 자동차를 만들 때 전체를 하나의 몸체로 만든다.
  • 바퀴, 엔진, 핸들... 등이 하나로 뭉쳐져 있다.
  • 단점:
    a. 한 부분이 고장나면 전체가 동작하지 않는다.
    b. 그리고 유지 보수에 어려움이 있다.
    c. 개발 기간이 오래 걸리고 비용이 많이 든다.
    d. 협업이 어려움.
  • 장점:
    a. 섬세한 코딩 가능.
    b. 메모리 사용이 적다.
    c. 작은 규모의 프로그램에 적합.

2. 객체 지향 프로그래밍

  • ex) 자동차를 만들 때, 부품 별로 미리 만들어 두고, 나중에 한번에 조립하는 형태
  • 장점:
    a. 한 부분이 고장나도 다른 부분 동작 가능.
    b. 유지 보수가 쉬움.
    c. 개발기간이 짧고 비용도 적게 듬.
    d. 협업이 가능.
  • 단점:
    a. 메모리의 사용이 좀 더 많음.
    b. 불필요한 부분까지 프로그램에 포함된다.
    c. 대규모의 프로그램에 적합.

자바에서 코드를 어디에 입력할지 배워보겠습니다.

메인 메서드는 대체로 다음과 같은 형식을 갖습니다.

public static void main() {
    // 실행 코드
}

여기서 public은 메서드의 접근 제어자로, static은 정적 메서드임을 나타냅니다.

void는 메서드가 값을 반환하지 않음을 의미하며, main은 메서드의 이름입니다.

메인 메서드 안에는 프로그램의 실행 코드가 작성되며, 이 코드가 실행되어 프로그램이 동작합니다.

메인 메서드에서 다른 메서드를 호출하여 작업을 수행할 수도 있습니다.


주석문과 식별자

1. 주석문(Comment):

  • 주석의 종류
    1. 한줄 주석(//): 주석 내용이 한줄일 때 사용. // 다음부터 그 줄의 끝까지의 내용이 주석으로 간주됩니다.
    2. 여러 줄 주석(/* ~ /): 여러 줄의 주석이 필요할 때 사용. / ~ */ 사이의 내용이 모두 주석처리됩니다.
    3. document 생성용 주석(/** ~ */) : API 문서 생성용 주석입니다.
  • 세미콜론(;), 블록({}), 공백(whitespace)
  • 논리적인 한 문장이 끝날 때 반드시 세미콜론을 붙여줍니다.
  • 블록은 중괄호로 묶은 부분을 말하며, 복합문을 구성하는 요소입니다.
    즉, 종속된 문장이 다수 개일때,' { ' 로 시작하고 ' } '로 닫습니다.
  • 공백은 빈칸, 탭, 빈 줄 등이 있으며, 이러한 공백은 소스코드를 보기 좋게 하고 알아보기 쉽게 하는데 사용합니다. 즉, 프로그램을 구조화 형태로 표현하는데 유용합니다.
package day01;

/**
 * @author 2011c
 * @since java 17
 */

public class CommentExample {

    public static void main(String[] args) {
        /*
         * 여러 줄 주석은 여닫는 부분이 명시되어야합니다
         * 여러 줄 주석 내부에 여러 줄 주석을 중복해서 작성하면 안됩니다.
         */

        System.out.println("swu");

    }
// 한 줄 주석은 여닫는 부분도 필요없고 //중첩해도 됩니다.
}

주석의 종류 - 한줄주석

// 자바, C++, C, C# 자바스크립트 등

# 파이썬

주석의 종류 - 여러줄 주석

/*
    자바, C++, C, C#, 자바스크립트 등
*/

'''
   파이썬
'''

2. 식별자(identifier)

  • 자바 언어에서 식별자는 클래스명, 변수명, 메서드명 등 사용자가 만들어서 이용하는 고유한 이름을 식별자라고 합니다.
  • 식별자 생성 규칙(꼭 지켜야할 규칙)
  1. 대,소문자를 구분하고 길이 제한은 없습니다.
  2. 문자와 숫자, 밑줄(_), 달러기호($)를 포함할 수 있습니다.
  3. 문자, 밑줄, 달러기호로 시작할 수 있습니다.
  4. 숫자로는 시작할 수 없습니다.
  5. 공백을 포함할 수 없습니다.
  6. 키워드(예약어)는 식별자로 사용할 수 없습니다.
public class IdentifierExample {

    public static void main(String[] args) {
        // 자바의 식별자 이름은 대/소문자를 구분함
        int age = 20;
        int AgE = 30;

        System.out.println(age);
        System.out.println(AgE);

        // 식별자 이름은 숫자로 시작하지 않게 해 주세요.
        int number9 = 9;
        //int 9number = 9;

        // 식별자의 이름에는 공백이 포함될 수 없습니다.
        int birthDay = 1009;
        //int birth Day = 1009;

        // 키워드(예약어, 보라색 글씨)는 식별자로 사용 불가
        //int static = 50;
    }
}

2.1 식별자 이름 규칙(개발자들의 약속)

  1. 클래스/인터페이스 이름 규칙
    • 명사나 형용사를 서술적으로 연결하여 사용합니다.
    • 첫글자는 대문자로 표기합니다.
    • 연결된 단어의 첫 글자도 대문자로 표기합니다. (파스칼 케이스)
      ex) HelloWorld, MyCalculator
  2. 변수 이름 규칙
  • 명사적 의미를 갖게 만듭니다.
  • 첫글자는 소문자, 연결 단어의 첫글자는 대문자로 표기합니다. (카멜 케이스)
  • ex) customerAge, phoneNumber
  1. 메서드 이름 규칙
    • 동사적 의미를 갖게 합니다.
    • 첫글자는 소문자, 연결 단어의 첫글자는 대문자로 표기합니다. (카멜 케이스)
    • 메서드 이름 뒤에는 반드시 한 쌍의 괄호"()"가 뒤따릅니다.
    • 일반적으로 메서드 이름에는 "_"를 사용하지 않습니다.
    • ex) writeView(), join()
  1. 상수 이름 규칙
    • 모든 문자는 대문자로 표기합니다.
    • 단어와 단어 사이는 "_"로 연결합니다.
    • ex) NUMBER_ONE, LOGIN_OK

  • 프로젝트 export/import 방법
    1. export: 프로젝트 우클릭한 후, export 누르고 General탭에 Archive File 저장명 입력하고 finish
    2. import: file -> import , Existing ~~ 누르고 select Archive file -> 압축파일 로드

디버깅

main line에 더블클릭 or 우클릭 후 toggle to breakpoint → f11 → f6