일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 2739자바
- 스터디
- 백준자바 #백준10718
- 자바화면구현
- 백준구구단
- 백준고양이자바
- 자바컴포넌트
- 백준고양이
- 자바조건문
- 1일1로그
- cs지식
- 코로나백신
- 컴퓨터공부
- 자바컨테이너
- 백준10171
- 자바공부
- 자바토글버튼
- 화이자미열
- 화이자접종후기
- 자바이벤트
- 포장방스터디
- 백준10718자바
- 화이자1일차
- GUI
- 백준 #백준알고리즘 #백준 Hello World #Hello World
- java
- 화이자백신후기
- 자바
- 자바수업
- 백준2739
- Today
- Total
Salted Caramel
[수업 1일차] 2021.08.02 / java-1 / 글씨 크기변경, 변수형 본문
[수업 1일차] 2021.08.02 / java-1 / 글씨 크기변경, 변수형
꽃무늬라떼 2021. 8. 2. 20:42https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
파일탐색- 내 pc 버전 확인 후 다운로드
내 pc는 windows x64 로 그것에 맞는 jdk를 다운 받습니다.
https://www.eclipse.org/downloads/
eclipse ide 아래에 download packages를 눌러서 다운로드 해줍니다.
- 글자 크기 변경하는 법
eclipse의 상단 메뉴바에서 window를 클릭- preferences-appearance-colors and fonts-text font(더블 클릭)
- 한글 깨지지 않고 잘보이게 하기
eclipse의 상단 메뉴바에서 window를 클릭- preferences-workspace-text file encoding-other-UTF-8 로 변경한다.
- 자바: 객체 지향 프로그래밍 (가장 많이 사용하는 언어)
(네트워크 기초부터 배워야하는데 과정에서 생략했으므로 혼자서 공부해야한다.
객체
-속성: ex. 엔진, 핸들, 명사적인 개념
-기능: ex. 달리거나 서거나
Java 개요
객체지향언어 (1990)
1. 확장성(Scalaitity)
2. 보안성(Security)
클래스 캡슐화
-플랫폼 종속성
실행o: 인텔 CPU + 리눅스
실행x: apple 사의 MAC PC, 인텔 CPU+윈도우 노트북
-플랫폼 독립성(platform independency)
실행: 자바가상 기계(인텔CPU+리눅스, apple사의 MAC PC, 인텔CPU+윈도우 노트북
-컴파일(compile)이란?
사용자가 작성한 프로그램을 기계가 인식할 수 있는 기계어로 번역해 주는 소프트웨어
-API: 참조문서
-통합개발환경(IDE): 코딩, 컴파일, 실행과 같은 프로그램 개발과 관련된 모든 작업을 하나의 프로그램 안에서 처리하는 환경을 제공한다.
-camelcase(낙타)기법: 두 단어를 합칠 경우 중간 글자 첫 글자를 대문자로 사용
- Ex01
package sist;
//java에서의 한 줄 주석문
/*
* java에서의 두 줄 이상 주석문
* 내 용:java 기초
* 작성자:홍 길 동
* 작성일자:2021.08.02
*/
/*
* java 프로그램 작성 방법
* 1. 클래스 단위로 프로그램을 작성한다.
* ==> 클래스 이름 작성 시 첫 글자는 대문자로 작성한다.
* 2. 하나의 문장은 세미콜론(;)으로 끝난다.
* 3. 클래스의 이름은 첫글자를 대문자로 시작하고,
* 메서드의 이름은 첫글자를 소문자로 시작한다.
* ==> 메서드 이름에서 두개의 단언가 결합되는 경우(evenSum)
* 두 번째 글자의 첫단어는 대문자로 작성한다. (camelcase 기법)
* 4. main() 메서드 : 프로그램의 시작 위치를 의미한다.
* 가장 먼저 실행되는 놈이다.
* ==>JVM(Java Virtual Machine)이 main() 메서드를 찾아서
* 매서드 안의 내용을 순차적으로 실행을 함.
*
*/
public class Ex01 { // { : Ex01 클래스 시작을 의미함.
//main() 메서드 -기능
//프로그램의 시작 위치를 의마함. 가장 먼저 실행되는 놈이다.
public static void main(String[] args) { // { : main() 메서드 시작을 의미함.
System.out.println("안녕하세요? 자바에 오신걸 환영합니다.");
System.out.println("방가방가~~~");
System.out.print("저는 홍길동입니다.");
System.out.print("사는 곳은 서울시 입니다.");
System.out.println();
System.out.println();
System.out.println("저는 홍길동입니다.");
/*
* -System.out : 자바에서는 표준출력장치를 의미함.
* 표준출력장치(모니터, 콘솔)
* -println() : 지정된 장치에 결과(" " 안의 내용)을 출력허눈 매서드.
* ==> ln : line(출력을 한 후에 줄바꿈을 하라는 명령어)
* -print() : 내용을 출력한 후에 다음 줄로 이동하지 않고
* 다음에 출력될 내용을 옆(오른쪽)에 출력해 주는 메서드
* -이클립스 프로그램 사용 시 단축 키
* *Ctrl + s ==> 소스를 저장하는 단축키
* *Ctrl + F11 ==> 실행 단축 키
* *syso + Ctrl + space bar
*/
} // : main() 메서드 끝.
} // { : Ex01 클래스의 끝을 의마함.
- Ex02
출력하는 방법은 여러개로 방법을 많이 알고 있는 것이 좋다. 다양한 방법을 이용해서 출력해보는 것이 도움이 된다.
System.out.println("두번째 java 프로그램입니다. "+"콘솔 화면에 풀력하고 있습니다.");
+ 기호는 연결 기호로
" 문자" +"문자"
package sist;
//"두번째 java 프로그램입니다. 콘송 화면에 출력하고 있습니다." 를
//화면에 출력하는 방법
public class Ex02 {
public static void main(String[] args) {
//첫번째 방법
System.out.println("두번째 java 프로그램입니다. 콘솔 화면에 출력하고 있습니다.");
//두번째 방법
System.out.print("두번째 java 프로그램입니다. ");
System.out.println("콘솔 화면에 출력하고 있습니다.");
//세번째 방법
System.out.println("두번째 java 프로그램입니다. "+"콘솔 화면에 풀력하고 있습니다.");
}
}
- Ex03
방법1
System.out.println("프로그램 시작");
System.out.print("java ");
System.out.println("programming");
System.out.println("프로그램 종료");
방법2
System.out.println("프로그램 시작");
System.out.print("java ");
System.out.println("programming");
System.out.println("\n프로그램 종료");
역슬래시+ n (=\n) :제어문자 줄바꿈을 제공
역슬래시+ t (=\t) :제어문자 tab을 제공
package sist;
public class Ex03 {
public static void main(String[] args) {
System.out.println("프로그램 시작");
System.out.print("java\t");
System.out.println("programming");
System.out.println("\n프로그램 종료");
/*
* java에서의 제어문자
* -\n : 줄바꿈을 제공해 주는 제어문자.
* -\t : 일정한 간격(tab)만큼 칸을 띄어 주는 제어문자.
*
* 이클립스 단축 키
* -Ctrl + Shift + F키 :들여쓰기 기능을 제공하는 단축 키.
*/
}
}
- Ex04
System.out.println("a >>>" + 10 +2); // a >>> 102
System.out.println("a >>>" + (10 + 2)); //a >>>12
가로 안에 또 다른 가로가 있을 경우에는 가로가 우선 순위가 높다. 그래서 10 + 2=12가 출력이 먼저 된다.
package sist;
/*
* [문제] 아래와 같이 콘솔 창에 출력해 보세요.
*
* 이 름 : 홍 길 동
* 연락처 : 000-000-000
* 이메일 : abc@naver.com
* 주 소 : 서울시
*/
public class Ex04 {
public static void main(String[] args) {
/*System.out.println("이 름 : 홍 길 동");
System.out.println("연락처 : 000-000-000");
System.out.println("이메일 : abc@naver.com");
System.out.println("주 소 : 서울시");*/
System.out.print("이 름 : " + "홍 길 동");
System.out.println("\n연락처 : 000-000-000");
System.out.print("이메일 : abc@naver.com\n");
System.out.print("주 소 : 서울시");
}
}
- Ex05
package sist;
public class Ex05 {
public static void main(String[] args) {
//숫자 + 숫자 ==> 숫자(+의 역할은 덧셈의 역할)
System.out.println(10 + 2); //12
//문자 + 숫자 ==> 문자(+의 역할은 연결(결합)의 의미( 연결자의 역할)
System.out.println("10" + 2); //102
//숫자 + 문자 ==> 문자(+의 역할은 연결(결합)의 의미)
System.out.println(10 + "2"); //102
//문자 +문자 ==> 문자(+의 역할은 연결(결합)의 의미)
System.out.println("10" +"2"); //102
System.out.println("a >>>" + 10 +2); // a >>> 102
System.out.println("a >>>" + (10 + 2)); //a >>>12
}
}
- JAVA
*프로그래밍 언어
- 프로그래밍 언어는 컴퓨터가 실행할 프로그램을 작성하는 언어를 말함.
- 컴퓨터는 이진수(binary code) 밖에 이해하지 못함.
즉 0과 1만 알고 있음.
이렇게 이진수로 구성된 언어를 기계어(machine language)라고 함.
- 프로그래밍 언어에는 여러가지가 있는데 사람이 이해하기 쉽고 자료를
효율적으로 표현할 수 있는 고급언어가 생겨나게 됨.
- 고급언어는 초기에는 절차지향 언어 형태를 가졌지만, 현재는 객체지향
언어로 진화하게 됨.
- 컴퓨터는 JAVA나 C++과 같은 고급언어로 작성된 프로그램을 직접 처리할 수 없음.
컴퓨터가 실행 할 수 있는 기계어 코드로 변환되어야 하는데 이렇게
기계어로 변환되는 작업을 컴파일(compile) 이라고 함.
* JAVA의 특징
1.JAVA는 객체지향 언어이다.
- 프로그램을 개발하는 기법으로 부품에 해당하는 객체를 먼저 만들어 내고,
이것들을 하나하나씩 조립 및 연결하여 전체적인 프로그래밍을 완성하는 기법.
2. JAVA는 이식성이 높은 언어이다.
- 운영체제가 다르면 원래 MS 윈도우 환경에서 만들어진 프로그램은
다른 운영체제에서는 프로그램을 수정해서 사용해야 함. 하지만 JAVA는
소스 파일을 수정하지 않아도 사용 가능한 것이 장점임.
3. JAVA는 메모리르 자동으로 관리한다.
- JAVA는 개발자가 직접 메모리에 접근할 수 없도록 설계되어 있으며, 메모리를
직접 JAVA가 관리함. 사용이 완료되면 쓰레기 수집기(Garbage Collection)
을 실행시켜서 자동으로 사용하지 않는 내용을 제거시켜 줌.
따라서 메모리가 부족합니다 라는 메세지가 나타나지 않음
4. JAVA는 다양한 애플리케이션 개발이 용이하다.
- 단순한 콘솔 프로그램으로부터 클라이언트용 애플리케이션 그리고
모바일 안드로이드 앱에 이르기까지 다양한 개발이 가능함.
*자바 개발 환경
- 자바 개발도구(JDK) 설치
자바 개발 키트(JDK : Java Developement Kit)와
자바 실행 환경(JRE : Java Runtime Environment) 두 가지가 있어야 함.
1. JDK는 프로그램 개발에 필요한 자바 가상 기계(JVM), 라이브러리 API,
컴파일러 등의 개발 도구가 포함되어 있음.
2. JRE는 프로그램 실행에 필요한 자바 가상 기계(JVM), 라이브러리 API만
포함되어 있음.
※ Jvm(Java Virtual Machine : 자바 가상 기계)
- 운영체제는 자바 프로그램을 바로 실행할 수 없음. 자바 프로그램은 완전한
기계어가 아닌 중간 단계의 코드이기 때문에 따라서 이것을 해석하고 실행 할 수
있는 가상의 운영체제가 필요한. 이것이 바로 자바 가상 기계임.
JVM은 실 운영 체제를 대신하여 자바 프로그램을 실행하는 가상의 운영체제
역할 을 함. 쉽게 이야기 한다면 "자바를 실행시키는 가상의 기계" 라고 생각하면됨.
*소스 프로그램(source program)과 소스 파일(source file)
- 소스 프로그램 : 사람이 인식할 수 있는 문장(프로그래밍 언어)을 나열해서 만든
프로그램을 말함. 대문자와 소문자를 구분함.
- 소스 파일: 소스 프로그램을 저장하고 있는 파일을 말함. 소스 파일의 이름은
프로그램에서 class 뒤에 적은 클래스 이름에 확장자 .java를 붙임.
- 소스 프로그램 컴파일(compile)과 클래스 파일(class file)
작성한 소스 프로그램은 바이트 코드 형식으로 변환되는 컴파일 작업이 필요함.
예를 든다면 Hello.java하는 파일을 컴파일 작업을 진행하면 Hello.classㄹ나느
이름을 가진 클래스 파일이 생성이 됨.
//기계어가 알아듣는 코드로 되어 있는것이 class 파일
class이름.class
- 변수
*변수(Variable)? (값이 변한다 해서 변수)
* - 하나의 데이터(값)를 저장할 수 있는 메모리 공간을 의미함.
* - 변수는 여러 개의 값을 저장할 수 없고, 오직 하나의 값만을 저장할 수 있음.
* - 필요한 데이터를 저장할 곳을 미리 선언해 두고, 나중에 계속해서 사용하기
* 위해 변수를 만듬.
*
*
* 변수를 선언하는 방법
* - 형식) 자료형 변수명;
*
*
* -자료형: java의 기본 자료형(8가지)
* -변수명: 사용자가 임의로 만들수 있음.
*
*
*/
/*
* java에서의 기본 자료형(8가지)
* 1. 정수형(정수자료형) : byte(1바이트), short(2바이트)
* int(4바이트-기본형), long(8바이트)
* 2. 실수형(실수자료형) : float(4바이트), double(8바이트-기본형)
* 3. 단일문자형 : char(2바이트)
* 4. 논리형(논리자료형) : boolean(true / false)
*
* - 나머지 자료형은 참조 자료형 - 5장부터 나오는 내용.
*
*/
/*
* 변수 사용 절차
* 1. 변수 선언 - 자료형 변수명;
* 2. 변수 초기화 - 변수에 값을 저장(= 기호를 사용)
* 3. 변수 이용 - 연산 및 출력.
*
* 변수명(식별자) 만드는 작성 규칙
* - 변수명, 메서드명, 클래스명 등의 이름을 지정할 때 사용함.
* 1. 예약어(키워드 - 문법적으로 사용되는 단어) 사용 불가.
* 2. 영문자 또는 특수문자(_ or $)로 시작.
* 3. 숫자로 시작하면 안됨. - 1sum(x)
* 4. 대소문자는 구분함 - SUM과 sum은 다른 변수명으로 인식.
* 5. 변수명은 의미있게 만드는 것이 좋음.
*/
변수 초기화 - 변수에 값을 저장(=기호를 사용).
su1 = 120;
이꼴 기호는 오른쪽의 값을 왼쪽(su1)이라는 변수에 넣어주세요
su1 = 120;
System.out.println("su1 >>> " + su1); // 이변수에 넣은 것을 출력해주세요
int su1 = 500;
su1 = su1 + 1000;
System.out.println("su1 >>> " + su1); //su1 >>> 1500
public class Ex01 {
public static void main(String[] args) {
//1. 변수 선언- 자료형 변수명;
//int su1;
//2. 변수 초기화 - 변수에 값을 저장(=기호를 사용).
//su1 = 500;
// 1 +2 : 변수 선언 변수 초기화
int su1 = 500;
int su2 = 134;
//su1 = su1 + 1000;
System.out.println("sum >>> " + (su1 + su2));
}
}
package sist;
public class Ex02 {
public static void main(String[] args) {
int x = 63; // x라는 변수는 int자료형이고 x변수에 63이라는 값을 넣어둡니다.
int y = 19; // y라는 변수는 int자료형이고 y변수에 19이라는 값을 넣어둡니다.
System.out.println("x 값은 " + x + " 입니다.");
System.out.println("y 값은 " + y + " 입니다.");
System.out.println("두 수의 합은 " + (x + y) + " 입니다.");
System.out.println("두 수의 평균은 "+ ((x + y) / 2) + " 입니다.");
}
}
'coding > [2021.08.02~2022.01.24] 수업복습' 카테고리의 다른 글
[수업 6일차] 21.08.09, Exam01, Exam02, Exam03, method (0) | 2021.08.10 |
---|---|
[수업 5일차] 2021.08.06, 배열, 보조제어문, 가변배열 (0) | 2021.08.06 |
[수업 4일차] 2021.08.05/ Scanner, 반복문(for,while,...),숫자맞추기게임 (0) | 2021.08.05 |
[수업 3일차] 2021.08.04/ 조건문(if,if~else...), 제어문 (0) | 2021.08.04 |
[수업 2일차] 2021.08.03 /형변환,printf,단축배정연산법 (0) | 2021.08.03 |