유정잉

1일차 Java [ JDK 설치 , WINDOWS 환경 변수 설정 , ECLIPSE 설치 , Scanner , 자동 강제 타입 변환 ] 본문

네이버 클라우드 부트캠프/복습 정리

1일차 Java [ JDK 설치 , WINDOWS 환경 변수 설정 , ECLIPSE 설치 , Scanner , 자동 강제 타입 변환 ]

유정♡ 2024. 2. 20. 15:21

1. 구글 검색창에 jdk downloads 검색 후 버전과 운영체제에 맞게 파일 설치 ( Java Downloads | Oracle 대한민국 )

2. WINDOWS 환경 변수 설정

    내 pc ->  (오른쪽클릭) 속성 -> (관련링크) 고급 시스템 설정 -> 고급 -> 환경 변수 ->

    (아래 상자 시스템변수에) path 더블클릭 ->  새로만들기 -> java bin 폴더 경로 붙여넣기 -> 위로이동 -> 확인

3.  java bin 폴더 경로 확인 하는 법 

     내 pc -> C 드라이브 - > Program Files -> Java -> jdk-17 ( 숫자는 버전에 따라 상이함 ) -> bin -> 위에 경로 복사

    C:\Program Files\Java\jdk-17\bin

WINDOWS 환경 변수 설정
java bin 폴더 경로 확인 하는 법

 

 

4. 구글 검색창에 eclipse downloads 검색 후 버전과 운영체제에 맞게 파일 설치

    ( Eclipse Downloads | The Eclipse Foundation ) ( 최신버전의 경우 충돌하는 경우가 종종 있어서 전버전 설치 권장 )

eclipse 낮은 버전 설치 하는 법

 

 


1. elipse New Project 만들기

 

2. eclipse New Class 만들기

    이때 Class의 Name은 항상 대문자로 시작해야함.

    숫자로 시작할 수 없고 공백도 사용할 수 없음. 소스파일명과 대소문자가 완전히 일치해야함.

3. 윈도우에서 이클립스를 사용하는 경우 한글이 깨져서 보이는 경우도 있음.

     해결방법 -> Window -> Preferences -> General -> Workspace -> Text file encoding -> Other -> UFT-8 선택


API(Application Programming Interface) 자바 API(Java API)는 자바를 사용하여 쉽게 구현할 수 있도록 한 클래스 라이브러리의 집합이다.  Overview (Java Platform SE 8 ) (oracle.com)

 

Java Platform SE 8

 

docs.oracle.com


[ Scanner ]

Scanner 활용

 


Q. Scanner클래스를 이용하여 이름, 사는 곳, 나이, 체중을 입력받고, 출력하는 프로그램 작성해라.

실행 결과)

        입력해라: kim seoul 29 65.5

        내 이름은 kim이다.

        사는 곳은 seoul이고, 나이는 29살이다.

        몸무게는 65.5kg이다.

우선 스캐너라는건 자바에서 이미 만들어져 있는 클래스로 import해서 해당 스캐너를 쓸 수있어 Scanner sc = new scanner를 통해서 스캐너 객체를 하나 생성하는거야 그럼 sc는 스캐너라는 타입의 변수가 되는거야. 그럼 스캐너에는 여러가지 함수들이 존재해서 next라는 함수는 콘솔창에서 글자를 입력받아 문자열로 바꿔주는거야. 그러니까 String name = sc.next()를 하게되면 저 코드가 실행되는 시점에 콘솔창에서 글자를 입력할 수 있는거지.

그러니까 실행결과를 보면 입력해라: 라고 글자가 찍히고 그다음에 내가 원하는 kim seoul 29 65.5를 입력해야되잖아? System.oput.print("입력해라: "); 라는 코드를 넣으면 우선 입력해라: 라는글자가 콘솔에 찍히게 되는거야.

그다음에 String name = sc.next();가 실행되니까 문자를 하나 입력받을 수 있고. kim을 입력하고 엔터를 치면 그 다음 코드인 String address = sc.next();가 실행이 되면서 또 글자를 입력할 수 있는거지. 그렇게 kim 쓰고 엔터 seoul쓰고 엔터 이렇게해서 모든글자를 입력하게되면

name에는 kim / address에는 seoul / age에는 29 / weight는 65.5라는 값이 들어가게 되는거야.

그 다음에 System.out.println를 이용해서 " 내 이름은 " + name ....쭉쭉죽 입력하면 되는거야.

Scanner 클래스에는 next();, nextInt(); 이런것들이 존재하는데 차이점은 콘솔에서 입력받은걸 문자로 바꿔주는건 next(), int형으로 바꿔주는건 nextInt, float형으로 바꿔주는건 nextFloat()등이 존재하는거야

(( 근데 저댓글에 올린걸보면 굳이 저렇게 안하고 next()만을 써서 문자로 다받아서 int age가 아니라 String age = sc.next(); 이렇게 해도 문제는없어. ))

개발코드는 항상 순차로 실행된다. 즉 위에서 아래로 하나씩 실행되는거니까 그게 제일중요해.

Scanner sc = new Scanner(System.in);
System.out.print("입력해라 : ");
String name = sc.next();
String address = sc.next();
이렇게 코드가 되있으니까 Scanner 객체가 하나를 먼저 만들고 그다음 코드인 콘솔창에 입력해라: 라는 글자가 찍히게 되고 그다음 코드인 sc.next();가 실행되면서 글자를 입력받기 위해 대기하는 상태가 되는거지.
그다음에 name값인 kim을 입력하면 그다음 코드인 String local = sc.next();가 실행되면서 그다음 문자를 입력받기위해 콘솔에서 대기하고있는거야.

그렇게 하나씩 입력하면 마지막에 System.out.println이 실행되면서 내 이름은 뭐, 사는곳은 뭐 이렇게 콘솔에 출력이되는거야

[ 자동 강제 타입 변환 ]

 

자동 타입 변환? 자동 타입 변환 promotion은 말 그대로 자동으로 타입 변환이 일어나는 것을 말한다. 값의 허용 범위가 작은 타입이 허용 범위가 큰 타입으로 대입될 때 발생한다. 

                          큰 허용 범위 타입 = 작은 허용 범위 타입

 

강제 타입 변환? 큰 허용 범위 타입은 작은 허용 범위 타입으로 자동 타입 변환될 수 없다. 큰 허용 범위 타입을 작은 허용 범위 타입으로 쪼개어서 저장하는 것을 강제 타입 변환 casting이라고 한다. 

                           작은 허용 범위 타입 = ( 작은 허용 범위 타입 )큰 허용 범위 타입

 

 

 

728x90