pikac
中间值输出
练习02-07
Day 04 변수
<변수타입>
* 변수의 이름은 식별자(identifier)의 일종
* 변수 이름의 규칙
~ 식별자는 유니코드 문자와 숫자의 조합 /* 유니코드는 16비트 */
* 클래스명 : 대문자
* 변수명, 메소드명 : 소문자로 시작되어 2번째 단어의 첫 글자는 대문자로 한다.
기초형 : 정수 -> int // 실수 -> double
Alt + ↕ = 문장이동 // Ctrl + D = 문장삭제
관계연산의 결과물은 항상 boolean타입의 값 : true / false
논리 연산자는 참/거짓간의 연산
연산자의 우선 순위
(왼쪽 -> 오른쪽) // 단항,부호,대입은 (왼쪽 <- 오른쪽)
10101 11010
10000 <- and 연산결과
11111 <- or 연산결과
01111 <- xor 연산결과 :: 서로 같으면 거짓, 다르면 참
형변환 : 어떤 자료형의 값을 다른 자료형의 값으로 바꾸어 주는 연산
명시적 형변환 // 암시적 형변환
확대 형변환 // 축소 형변환
3가지의 제어구조
순차구조 // 선택구조 // 반복구조
double length = 2 * radius * pie;
double area = radius * radius * pie;
관례적으로 심볼릭 상수의 변수명은 모두 대문자 pi -> PI
' IOT 기반 응용 SW과정 > Java, Eclipse ' 카테고리의 다른 글
Day 06 复习 (0) | 2016.03.21 |
---|---|
Day 05 if/while (0) | 2016.03.18 |
Day 03 영역 (0) | 2016.03.16 |
Day 02 메소드 (0) | 2016.03.15 |
Day 01 开始 (0) | 2016.03.14 |
Day 03 영역
百見不如一打 : 수백 번 본들 한번 쳐보고 실행해볼만 하다.
변수는 타입과 이름(바구니 구분용)을 가지고 있다.
:변수는 값을 담는 바구니인데 값의 유형에 따라 바구니의 유형도 여러가지가 있음
ex) ch, i, fvalue
변수의 초기화 : 변수에 처음으로 값을 넣어주는 것
ex) int x;
int 타입의 변수 x를 생성, 정수를 담을 수 있는 바구니 x를 생성, 정수변수 x를 선언
x = 100
x라는 변수에 100이라는 값을 담음, x라는 변수의 값을 100으로 초기화
상수(constant)는 프로그램이 실행하는 동한 변하지 않는 수.
10.0 : 실수상수 // 10 : 정수상수 // 'a' : 문자상수(한글자만) // "a" : 문자열상수
수식(expression)은 피연산자와 연산자로 이루어진다, 결과값을 가진다.
x = 100 / y = 200 / sum = x + y
대입 연산자는 오른쪽에 있는 값을 왼쪽의 변수에 담음
대입 연산자 == 할당 연산자 == 배정 연산자 /* == : 같다 */
산술 연산자
프로그래밍에서는 두개의 피연산자가 같은 타입이면 결과도 그 타입이 나와야함
문자열끼리의 산술은 이어붙임
ex) 4/3 = 1 <- 정수와 정수를 연산했기에 결과도 정수(소수버림)
5.0/2 = 2.5 <- 서로 다른놈들 연산하면 더 큰타입의 결과로 나옴(문자열>실수>정수)
6.0/3 = 2.0 // 6/3 = 2
System : 필수기능, 그냥 언제든 사용가능
out : 표준출력 -> 모니토로 데이터를 출력할 수 있는 기능을 가진 꾸러미
in : 표준입력 -> 키보드로부터 데이터를 읽어들일 수 있는 기능을 가진 꾸러미
Scanner : 입력데이터를 편리하게 가공해주는 도우미 꾸러미, 외부에 있어서 임포트 선언 해야 사용가능 < import java.util.Scanner; >
/* Ctrl + space : 자동완성 단축키
sysout <- Ctrl+spase = System.out.print(); */
nextInt : 키보드로부터 들어오는 다음 데이터를 정수로 읽어서 갖다줌, 대기하다가 데이터가 들어오면 정수로 가공해서 가공한 결과를 return.
서식문자 : %시리즈 // %d : 십진수를 나타냄
지역변수 : {}블록안에서 만들어진 변수
-> 변수선언문을 만날때 생성(공간할당), 자신이 포함된 함수가 종료될때 없어짐
스택(stack)은 제한적으로 접근할 수 있는 나열 구조이다. 그 접근 방법은 언제나 목록의 끝에서만 일어난다. 끝먼저내기 목록(Pushdown list)이라고도 한다
// LIFO : Last-In, First-out
늦게만들어진놈이 꼭 먼저 없어짐
/* 큐(queue)는 컴퓨터의 기본적인 자료 구조의 한가지로, 먼저 집어 넣은 데이터가 먼저 나오는 FIFO (First In First Out)구조로 저장하는 형식을 말한다. */
스택영역(stack) : 지역변수들의 저장
힙영역(heap) : 동적으로 할당한 데이터들이 저장 (기초자료형이 아닌 데이터)
/** 프로그래밍에서,, 정적 : 컴파일시에 미리 예측가능하며 결정된 사항
동적 : 실행시에 결정되는 사항
<오류>
* 컴파일 오류(compile-error) : 컴파일이 실패한거 (ex. 문법이 틀림) <--대놓고 발견
* 실행 오류(rum-time error) : 실행중에 프로그램이 뻗는거 (ex. 정수입력 받을라고 스캐너 대기중인데 문자입력..) <-- 테스팅 통해 발견
* 논리 오류(logical error) : 컴파일/런타임 에러 없이 잘 동작했는데, 프로그램 결과가 원한값이 아님.
자바란?
* 이식성이 높은 언어이다. <- 서로 다른 실행환경을 가진 시스템 간에 프로그램을 옮겨 실행할 수있는것, 자바 실행 환경 (JRE : Java Runtime Environment)
* 객체 지향 언어이다. <- 부품에 해당하는 객체들을 먼저 만들고, 이것들을 하나씩 조립 및 연결해서 전체 프로그램을 완성하는기법 : 객체 지향 프로그램(OOP : Object Oriented Programming)
* 메모리를 자동으로 관리한다. <- 쓰레기 수집기(Garbage Collector)
**막강한 오픈소스 라이브러리가 풍부하다.
자바 가상 기계(JVM)
"Write once, run anywhere."
' IOT 기반 응용 SW과정 > Java, Eclipse ' 카테고리의 다른 글
Day 06 复习 (0) | 2016.03.21 |
---|---|
Day 05 if/while (0) | 2016.03.18 |
Day 04 변수 (0) | 2016.03.17 |
Day 02 메소드 (0) | 2016.03.15 |
Day 01 开始 (0) | 2016.03.14 |
Day 02 메소드
소스파일작성
* 윈도우 보조 프로그램의 메모장 사용
* 파일의 확장자는 .java로 한다. //대소문자 구분!
Hello.java
public class Hello {
public static void main(String[] args){
System.out.println("안녕하세요. 자바 프로그래머 여러분!");
}
}
--> 바탕화면에 저장 --> cmd 실행 --> dir 입력 --> cd Desktop --> dir 입력
--> javac hello.java 입력 -->dir 입력 --> Hello.class 확인(컴퓨터가 실행가능한 기계어로 이뤄진 작업수행명세) --> java Hello 입력(확장자명.class 제외)
-----------------------------------------------------------------------------------
소스코드편집 + 컴파일 + 실행 = IDE
-> 이클립스(eclipse) <-
설치
->이클립스 폰트변경방법
뷰 지정
자바에서 세가지의 주석문법
1. 문장 주석 : //로 시작해서 편집기상의 라인이 끝날때까지의 내용을 무시
2. 문단 주석 : /* 를만나서 */ 만날때까지의 내용을 무시
3. 문서 주석 : /** **/
이클립스에서의 주석단축키
ctrl + shift + c (범위지정 후)
ctrl + / (범위지정 후)
자바 내에 public class는 한개 / / F2 - 파일명 변경
/*CPU(중앙처리장치) -> 연산장치
메모리(주기억장치) -> 저장장치
HDD(보조기억장치) -> 저장장치*/
변수(variable) : 값을 담을 수 있는 바구니
[데이터를 일시적으로 저정할 목적으로 사용하는 메모리공간]
int x = 100 / int y = 200 / int sum // sum = x + y
/* 컴퓨터 구조론, 운영체제, 데이터베이스, 네트워크통신, 알고리즘
bit = 0/1을 한개 저장할 수 있는 공간 / byte : 8bit : 저장 최소 단위
ASCII
1바이트를 구성하는 8비트 중에서 7비트만 쓰도록 제정된 이유는, 나머지 1비트를 통신 에러 검출을 위해 사용하기 때문이었다. Parity Bit라고 해서, 7개의 비트 중 1의 갯수가 홀수면 1, 짝수면 0으로 하는 식의 패리티 비트를 붙여서, 전송 도중 신호가 변질된 것을 수신측에서 검출해낼 확률을 높인 것. */
클래스(class) : 자바 프로그램을 구성하는 구성요소, 영역을 나누는 역할
= 필드(변수) + 메소드(함수)
메소드(함수)란,, 입력을 받아서 작업을 수행하고 결과를 내보냄, 명령문장들의 집합
main() 메인함수
함수의 구성요소
-> 몸통 : 이 함수가 호출됬을때 실행해야 될 문장집단
-> 매개변수 : 함수가 실행될때 전달받는 입력값
-> 반환값 : 함수가 끝나고 돌려줘야되는 값
/* 구조체 */
' IOT 기반 응용 SW과정 > Java, Eclipse ' 카테고리의 다른 글
Day 06 复习 (0) | 2016.03.21 |
---|---|
Day 05 if/while (0) | 2016.03.18 |
Day 04 변수 (0) | 2016.03.17 |
Day 03 영역 (0) | 2016.03.16 |
Day 01 开始 (0) | 2016.03.14 |
Day 01 开始
데이터 > 정보 : 의미있는 데이터
事物인터넷 : IOT // 한국사물인터넷협회
빅데이터 : 통계분석 [센서,기타 데이터 창출매체와 인터넷연결]
\ 웹페이지 \
HTML에 의해서 구조가 잡히고, CSS에 의해서 꾸며지고, Flash/Java Script(JQeury)에 의해서 동적으로 반응
CLI - Command Line Interface (cd..// cd [ ] )
[dir - dos 기반 CLI에서 현재 폴더의 리스트를 출력]
GUI - Graphic User Interface
Java SE Development Kit (JDK) - 제작 > JRE - 실행
환경변수에 경로등록
해당 경로에 있는 파일들이 어디서나 실행가능하도록 등록
[C:\Program Files\Java\jdk1.8.0_73\bin]
내컴퓨터 속성 고급시스템 / 고급탭 - 환경변수 - 아래박스
Path 변수값 찾아서 더블클릭
맨 뒤에 : 추가 하고 자바 경로를 붙여놓고 확인
(EX)
java 프로그램 개발 단계
어셈블리어 [ ADD연산 3 5 - 00 0011 0101
MULT연산- 10
SUBT연산 - 01
DIV연산 - 11 ]
컴파일(러.javac) - 사람이 프로그래밍 언어의 문법에 맞춰 작성한 소스코드를 컴퓨터가
실행가능한 기계언어로 번역, 번역된 기계어를
자바가상머신(클래스 적재기, 바이트 코드 검증기)에 투척하면 프로그램이 실행됨
통합 개발 환경( integrated development environment) - IDE
++이클립스++
' IOT 기반 응용 SW과정 > Java, Eclipse ' 카테고리의 다른 글
Day 06 复习 (0) | 2016.03.21 |
---|---|
Day 05 if/while (0) | 2016.03.18 |
Day 04 변수 (0) | 2016.03.17 |
Day 03 영역 (0) | 2016.03.16 |
Day 02 메소드 (0) | 2016.03.15 |