# 1. 자바 1일차(230814) [국비교육]

brand_mins·2023년 8월 14일

Java

목록 보기
1/47

0. 기본설정

1) project Explorer, console 없어서 찾을 때

  • window-show view 에서 검색 후 클릭.

1. 자바 Hello World

public class JavaStart00 {
	public static void main(String[] args) {
    	System.out.println("Hello World");
  • public class JavaStart00은 클래스를 선언하며 JavaStart00을 클래스명이라고 함.
  • 소스 파일명 = 대소문자 일치
  • 중괄호 {}는 클래스 블록, 여기에는 클래스 정의내용이 포함.
  • public static void main(String[] args) {}는 main 메소드. 중괄호 안에 있는 것은 메인 메소드 블록이다.
  • 바이트코드 파일을 실행하면 메인 메소드 블록이 실행.
  • 괄호 안에 String은 꼭 큰 따옴표인 문자열만 들어갈 수 있음.

2. 자바 기본용어들

(1) 자바 기초

  • 자바 프로그램에서 작성한 자바코드의 확장자명 .java
  • 컴파일할때 사용하는 파일: javac.exe
  • 컴파일된 파일을 실행시킬 수 있는 가상머신 이름
    : JVM(Java Virtual Machine)
  • 자바프로그램을 구현하여 실행하는 방법은 해당 자바코드 파일을 생성하여 메인 메소드에 출력.
  • 패키지는 클래스들을 묶어서 관리하는 디렉토리. 즉, 클래스 모음집임.
  • 자바 코드는 메인 메소드 안에 반드시 기술.
  • 프로그램 시작위치는 메인 메소드에서 시작해서 세미콜론으로 끝마쳐야 함.

(2) 프로그램 관련 용어

  • 프로그램: 결과를 얻기 위해 순서대로 진행하는 과정
  • 프로그램 실행: 프로그램을 기술한 순서대로 진행.
  • 프로그램 언어: 컴퓨터와 같은 기계장치와 의사소통 하기 위한 언어
  • 소프트웨어: 프로그램 언어로 만들어진 컴퓨터에서 사용하는 프로그램
  • 코드: 컴퓨터 프로그램 언어로 작성해 놓은 결과물
  • 프로그래머: 코드로 프로그램을 작성하는 사람
  • 하드웨어: 키보드 마우스, 본체 등의 기계장치

  • 기계장치: 사용자의 요청에 따라 어떤 일을 자동적으로 처리해주는 장치
    • 고급언어: 사람이 알아보기 쉬운 언어
      • 고급언어로 작성된 파일은 컴퓨터가 이해할 수 없어 컴파일 과정을 통해 컴퓨터가 이해할 수 있도록 함.
      • 고급언어로 작성한 파일: 소스파일(ex. java,c,c++ 등)
    • 저급언어: 기계장치 컴퓨터가 알아보기 쉬운 언어
  • 컴파일러: 고급언어를 저급언어로 변환함
  • 통합 관리 프로그램: 프로그램 제작을 돕도록 도와주는 응용 프로그램.
  • 실행: 작성한 코드를 한줄 한줄 읽고 적용함.
  • 버그: 프로그램 언어로 작성시 잘못된 프로그램 코드
  • 디버그, 디버깅: 잘못된 코드를 올바르게 수정하는 과정.

(3) 바이트코드 파일

  • 소스 파일(.java)을 작성한 후 컴파일
  • javac(java complier) 명령어는 소스파일 컴파일함.
  • 그 결과 확장명(.class)인 바이트코드 파일 생성.

(4) 자바가상머신(Java Virtual Machine)

  • 바이트코드 파일을 특정 운영체제가 이해할 수 있도록 기계어로 번역하고 실행
  • java.exe 명령어에 의해 구동됨.
  • 바이트코드는 어떤 JVM에서도 실행 가능한 독립적 코드.
  • JVM은 운영체제마다 다른 JVM이 사용됨.

(5) 자바 프로그램 개발 과정

1) 자바 소스파일 작성
2) javac.exe로 바이트코드(.class)파일 생성
3) java.exe로 JVM 구동
4) JVM은 main()메소드를 찾아 메소드 블록 실행.

3. 프로그램 3요소

  • 컴퓨터 프로그램은 현실 세계의 데이터를 컴퓨터에 넣고 가공 및 처리하여 사용자가 원할때 출력.
  • 프로그램은 3가지 요소로 구성되어 있음.

(1) 절차문

  • 코드가 기술된 순서대로 진행.

(2) 조건문

  • 둘중 하나를 선택하여 실행함.
  • 조건문의 값은 true, false 값을 나타내며 이 값을 boolean형 값이라고 부름.
  • 자바 문법에서는 if/else, switch문 사용

(3) 반복문

  • 특정 코드를 반복적으로 수행하고 싶을때 사용함.
  • 자바 문법에서 for, while, do-while문을 사용

  • 절차문, 조건문, 반복문만 활용한다면 알고리즘을 사용하여 문제 해결이 가능함.
    • 알고리즘: 프로그램에서 주어진 문제를 구현하고 해결하는 것임.

4. 주석

  • 자바에서 주석을 입력할 때 ctrl+ / 단축키를 누르면 주석이 생성된다.
  • 자바는 //로 주석을 작성함. : //부터 행 끝까지 주석 처리
  • 여러 줄 주석(범위 주석): "/★ (내용) ★/"
  • 도큐먼트 주석: /★★ 내용 ★/
    • 주의: 문자열 내부에서 작성하면 오류 발생.
package ch01.sec11
/**
* @author brandmins
*/
/*
장제목: 1장 자바 시작하기
작성일: 2023.08.15
*/
public class Hello {
	// 프로그램 실행 진입점
    public static void main(Stirng[] args) {
    	//콘솔에 출력하는 실행문
        System.out.println("Hello, Java!");

5. 자바 기초문법

1) 프로그램은 main 메소드에서 시작해서 main 메소드에서 끝남.
2) 프로그램은 위에서 아래로 실행.
3) 명령문의 끝은 세미콜론 붙이기
4) 관련있는 코드 중괄호로 묶기.
5) 중괄호 안에 있는 코드들 탭으로 들여쓰기
6) 중괄호{}는 시작위치와 같은위치에 닫기

  • System.out.println 메소드는 소괄호안에 오는 다양한 매개변수 자료형을 화면에 출력.
    • println: 줄바꿈한상태로 출력
    • print: 줄바꿈하지않고 출력.
  • 이스케이프 시퀸스: 코딩 중 표기하기 어려운 문자를 표현하기 위해 사용하는 방법.
  • 키워드: 문법적으로 사용할 수 있도록 미리 정한 것.
  • 예약어 : 키워드 사용이 예약되어 있는 것.
  • 식별자: 클래스, 인터페이스 등을 구분할 수 있는 언어.

6. 자바 실습

public class JavaStart00 {
	public static void main(String[] args) {
    	System.out.println("1");
        System.out.println("2");
        System.out.println("3");
        }
    }

public class JavaStart00 {
	public static void main(String[] args) {
    	System.out.print("1");
        System.out.print("2");
        System.out.print("3");
        }
     }

public class JavaStart00 {
	public static void main(String[] args) {
    	System.out.println("hello world");
        System.out.println(" World");
        System.out.println("hello");
        }
     }

public class JavaStart00 {
	public static void main(String[] args) {
    	System.out.print("12");
        System.out.println("34");
        System.out.println("56");
        }
      }

public class JavaStart00 {
	public static void main(String[] args) {
    	System.out.println("hello");
        System.out.println("java");
        }
      }

  • System.out.print("1"),System.out.print("2"),System.out.print("3"),System.out.print(" "), System.out.println("")만 활용.
public class JavaStart00 {
	public static void main(String[] args) {
    	System.out.print(" ");
        System.out.print(" ");
        System.out.print("1");
        System.out.println("");
        System.out.print(" ");
        System.out.print("1");
        System.out.print("2");
        System.out.println("");
        System.out.print("1");
        System.out.print("2");
        System.out.print("3");
      }
    }

  • System.out.print("*"), System.out.println("")만 활용
public class JavaStart00 {
	public static void main(String[] args) {
    	System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.println("");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.println("");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.println("");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.println("");
        }
      }

  • System.out.print("*"), System.out.println("")만 활용
public class JavaStart00 {
	public static void main(String[] args) {
    	System.out.print("*");
        System.out.println("");
        System.out.print("*");
        System.out.print("*");
        System.out.println("");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.println("");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.println("");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.println("");
        }
      }

  • System.out.print("*"), System.out.print(" "), System.out.println("") 만 활용
public class JavaStart00 {
	public static void main(String[] args) {
    	System.out.print(" ");
        System.out.print(" ");
        System.out.print(" ");
        System.out.print("*");
        System.out.println("");
        System.out.print(" ");
        System.out.print(" ");
        System.out.print("*");
        System.out.print("*");
        System.out.println("");
        System.out.print(" ");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.println("");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.println("");
        }
      }

  • System.out.print("*"), System.out.print(" "), System.out.println("") 만 활용
public class JavaStart00 {
	public static void main(String[] args) {
    	System.out.print(" ");
        System.out.print(" ");
        System.out.print("*");
        System.out.print(" ");
        System.out.print(" ");
        System.out.println("");
        System.out.print(" ");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print(" ");
        System.out.println("");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.println("");
        System.out.print(" ");
        System.out.print("*");
        System.out.print("*");
        System.out.print("*");
        System.out.print(" ");
        System.out.println("");
        System.out.print(" ");
        System.out.print(" ");
        System.out.print("*");
        System.out.print(" ");
        System.out.print(" ");
        System.out.println("");
        }
      }
profile
IT 개발자가 되기 위한 기록

0개의 댓글