DataScience Lab. 박사과정 김희찬 (월)

Slides:



Advertisements
Similar presentations
Copyright © 2015 Pearson Education, Inc. 6 장 : 프로그래밍 언어.
Advertisements

멘토링 2 주차 장 프로그래밍을 위한 자바의 자료형  값이 변하지 않는 상수  메모리 기억공간인 변수.
어서와 Java는 처음이지! 제3장선택과 반복.
VISUAL BASIC 양 계 탁.
어서와 Java는 처음이지! 제2장 자바 프로그래밍 기초.
컴퓨터 응용 및 실습 Part1. OOP&Java Programming data type Review
C++ Espresso 제1장 기초 사항.
제3장 C 프로그래밍 환경.
어서와 Java는 처음이지! 제2장 자바 프로그래밍 기초.
Chapter 02 JAVA 프로그래밍 시작하기 01 실무에서 사용하는 JAVA 개발 환경 02 JAVA 프로그램 작성
알기 쉽게 해설한 Java 8th edition
어서와 Java는 처음이지! 제1장 기초 사항 IT응용시스템공학과 김형진 교수.
데이터 구조 - 소개 순천향대학교 컴퓨터공학과 하 상 호.
자바란 무엇인가? JDK의 다운로드 및 설치 방법 Hello, Java 프로그램의 작성 자바 프로그램의 작동 원리
Ruby 프로그래밍 1 문자열 입출력 제어구조 looping 함수 정의
2주 실습강의 Java의 기본문법(1) 인공지능연구실.
Chapter 02 자바 기본구조 자바 프로그래밍의 기초적인 문법을 소개
제7장 제어구조 I – 식과 문장.
2강. JAVA 프로그래밍이란?-II & 변수 JAVA 프로그램 환경설정과 실행 방법 변수란?
Power Java 제4장 자바 프로그래밍 기초.
[INA470] Java Programming Youn-Hee Han
10장 객체-지향 프로그래밍 II ©창병모.
Department of Computer Software MyongJi University
JAVA 프로그래밍 6장 객체지향프로그래밍의 핵심.
Choi, Namseok Java 기초 (Java의 제어문과 배열) Choi, Namseok
제 2 장 기본 문법 (1-2) 주제 : 객체, 변수, 모듈, 상수.
제3장 이클립스 사용하기.
명품 Java Programming.
PHP + Eclipse + Google Code를 이용한 개발환경
2장 자바환경과 자바 프로그램 2.1 자바 개발 환경 2.2 자바 통합환경 2.3 자바 응용 프로그램과 애플릿 프로그램
Java IT응용시스템공학과 김형진 교수 2장. 자바의 환경 public class SumTest {
2장. JSP 개발 환경 설정 이 장에서 배울 내용 : JSP 페이지를 작성하기 위한 개발환경을 설정하고, 웹 애플리케이션 개발을 위해 반드시 이해하여야 할 웹 애플리케이션 폴더 구조에 대해 학습한다. 또한 요청된 JSP 페이지가 어떠한 처리과정을 거쳐 응답이 이루어지는가에.
Android 개발환경 설치 및 Hello World
Chapter 05. 클래스 완성. chapter 05. 클래스 완성 01. 복사 생성자 복사 생성(Copy Construction) 생성될 때 자신과 같은 타입의 객체를 변수로 받아, 이 객체와 같은 값을 갖는 새로운 객체를 생성하는 것 명시적인 생성 과정뿐만.
C ++ 프로그래밍 시작.
This, static, final 지정 예약어 자바 4대 중첩 클래스
제 4주 2014년 1학기 강원대학교 컴퓨터학부 담당교수: 정충교
2강. 개발 환경 설정 JDK 설치 Path 설정 이클립스 다운로드 톰캣 설치 톰캣 환경 설정
제1장 서론.
CHAPTER 2 자바의 환경 Section 1 자바 프로그램의 형태 Section 2 자바 프로그램의 실행환경.
컴퓨터 개론 및 실습 Dept. Computer Eng. Hankuk University of Foreign Studies
프로그래밍 보고서 작성법 순천향대학교 컴퓨터공학과 하 상 호.
DataScience Lab. 박사과정 김희찬 (월)
자바의 신 Volume 1 1부(1~3장) 자바의 신 메인 홈 : 자바의 신 페이스북: 자바의 신 문제 풀이 :
컴퓨터의 기초 제 2강 - 변수와 자료형 , 연산자 2006년 3월 27일.
03. 안드로이드를 위한 Java 문법 제목. 03. 안드로이드를 위한 Java 문법 제목.
WAP Java Seminar
Ch.1 Iterator Pattern <<interface>> Aggregate +iterator
강의 소개, 자료구조의 개념, SW 개발과 자료구조
메소드와 클래스 정의 및 문제 풀이 Method and Class Define and Problem Solve
제 2장 어휘구조와 자료형 토 큰 리 터 럴 주 석 자 료 형 배 열 형.
DataScience Lab. 박사과정 김희찬 (월)
[INA470] Java Programming Youn-Hee Han
Java Chapter 4 ~ 주차.
컴퓨터공학실습(I) 3주 인공지능연구실.
DataScience Lab. 박사과정 김희찬 (화)
프로그래머를 위한 첫걸음 JDBC Lecture 001 BY MINIO
비주얼 프로그래밍 1분반 화/목.
CACM 구현 public class CACM { public CACM(File file)
[INA470] Java Programming Youn-Hee Han
자바 5.0 프로그래밍.
Chapter 02. 소프트웨어와 자료구조.
Java 3장. 자바의 기본 구조 I : 변수, 자료형, 연산자 public class SumTest {
JESS Eclipse 박영택 숭실대학교.
자바 5.0 프로그래밍.
캡슐화 (Encapsulation) 두원공과대학 소프트웨어개발과 이 원 주.
11장 다형성과 추상 클래스, 인터페이스 Section 1 객체의 형 변환 Section 2 연산자 Section 3 다형성
DataScience Lab. 박사과정 김희찬 (화)
제 1장 프로그래밍 언어 소개 1.1 프로그래밍 언어란 무엇인가 1.2 프로그래밍 언어를 배워야 하는 이유
Choi Younghwan CSE HUFS
Presentation transcript:

DataScience Lab. 박사과정 김희찬 2017-07-10 (월) Big Data Analytics Short Courses, Summer, 2017 자바 맛보기 DataScience Lab. 박사과정 김희찬 2017-07-10 (월)

프로그래밍이란? 내가 원하는 모양대로 레고를 조립하는 것 원하는 바를 만드려면 각 블록이 어떻게 생겼는지 무슨 색인지 어떻게 움직이는지 알아야함

프로그래밍이란? 그렇지 못할 경우에는 프로그램이 원하는대로 구동이 안되거나 구동 자체가 안됨

자바란 무엇인가 객체지향 패러다임을 성공적으로 활용 객체지향? 클래스? 객체?

클래스와 객체 객체지향 (Object-Oriented) 기법에서는 그럼 객체는? 기능 단위를 클래스라는 조각으로 나눔 클래스가 Actor (Dog…) 메소드(Method)가 행위 (run…) 멤버 변수(Variable)가 상태 (white…) 클래스는 서로 연결 관계를 가질 수 있음 동물 : 상위 클래스 개, 양 : 하위 클래스 그럼 객체는? 실제로 생성된 클래스를 가리킴 실존하는 개는 서로 다르지만, 객체는 다르지만 같은 개이다 클래스는 같음 클래스 만으로는 사용할 수 없음 -> 꼭 객체를 생성해야함

클래스와 객체 다른 예제로 클래스과 객체의 차이를 보자 자동차 클래스로 실존하는 여러 객체를 만들 수 있음 좀 더 세분하여 설정할 수도 있음 벤츠, BMW, 아우디를 자동차의 하위 클래스로 선언, 각 모델을 객체로 생성 클래스는 자동차 설계도 객체는 설계도를 이용하여 직접 생성한 자동차

클래스의 구성 앞서 이야기한 것과 같이… 멤버 변수 멤버 메소드 (함수) 클래스에서 저장하고 있어야할 정보 해당 클래스의 특징 등 멤버 메소드 (함수) 클래스가 수행할 수 있는 것

변수 수학에서의 변수 프로그래밍에서의 변수 지시대명사 ‘데이터를 담는 상자’를 가리키는 지시대명사 데이터를 담는 상자는 메모리의 일정 공간 a = 10 b = a a = 11 b의 값은?

변수 자바 코드에서의 변수 선언 이해하기 메모리에 정수가 들어갈 상자 생성 상자의 이름은 ‘integer’ 저장할 값은 10

변수 10 10 10 7 10 7 상자를 이용한 변수의 생성 및 값의 변경 이해 이때 j 값을 변경하면? 데이터를 복사 i는 그대로 10 i j 10 10 j i 7 10 7 j i

변수 변수의 종류(타입) 데이터를 저장하려면 데이터에 따라 적절한 상자가 필요 이를 위하여 여러 형태의 변수가 존재 정수 / 실수 / 참,거짓 / 글자(문자열)

변수 테스트해보자 File -> new -> new java project ‘VariableTest’이란 이름으로 프로젝트 생성 src 폴더 우클릭 -> new -> class Test / public static void main 체크박스 체크 -> finish Main 메소드란? 해당 클래스를 실행할 때 처음 실행되는 함수 방아쇠 역할

연산자 산술 연산자 연산자도 우선순위가 존재함 사칙연산 + - * / Mod %

연산자 증감 연산자 변수 앞, 뒤로 다음 부호를 넣어서 연산 앞에 붙이면 다른 작업하기 전에 변수의 수를 변경 ++, -- 앞에 붙이면 다른 작업하기 전에 변수의 수를 변경 뒤에 붙이면 일단 작업하고 변수의 수를 변경

연산자 비교 연산자 같은지, 다른지 초과, 미만, 이상, 이하 ==, != 초과, 미만, 이상, 이하 >, <, >=, <= 비교 연산의 결과는 boolean(참 거짓/true false)임

연산자 논리 연산자 AND, OR &&, || 논리 연산의 결과는 boolean(참 거짓/true false)임

클래스와 객체 방금 테스트할 때 사용한 것도 클래스인가? 그러면 변수랑 메소드도 만들 수 있겠네? YES! Test라는 이름의 클래스 실행 시 시작할 부분 (main 메소드)

클래스와 객체 멤버 변수는 어떻게 생겼나? 일반 변수랑 똑같이 생겼으나 그 위치가 조금 다름 클래스 내의 모든 메소드에서 해당 변수를 이용할 수 있음

클래스와 객체 메소드는 어떻게 생겼나? 공개 범위 / 리턴 데이터 형태 / 메소드 이름 / 입력 파라미터 리턴 형태는 메소드 수행 결과를 외부로 반출할 형태와 같음 리턴하는 데이터가 없는 경우도 존재 (void)

클래스와 객체 반복되는 계산이나 절차는 메소드로 만드는 것이 좋음

클래스와 객체 클래스 내의 공개 범위 public은 접근 권한을 나타냄 Protected : 해당 클래스 내의 멤버 클래스 끼리만 접근 가능 Private : 모든 외부 클래스에서 접근 불가

클래스와 객체 Static은? static은 클래스에서 유일하다는 것을 나타냄 만약 클래스에 static variable이 있다면, 같은 클래스의 여러 객체가 해당 variable을 공유함 수박바(클래스)는 여러 개(객체)가 실존하지만 이름은 ‘수박바’로 같음 이때 이 이름이 static 변수라고 볼 수 있음

객체 만들기 상품 클래스를 만들어보자! 필요한 변수 필요한 메소드 상품명 상품 가격 getter, setter print 클래스의 세부 정보를 맘대로 바꾸면 안되니까, 클래스가 정의된 대로만 변경하기 위한 방법 print 상품명과 가격을 출력하는 메소드 Product() 생성자라는 이름의 메소드로 리턴형이 없음 객체가 만들어질 때 수행하는 것 (일종의 main함수?) 보통 멤버 변수를 초기화하는데 사용함

객체 만들기 상품 객체를 만들어보자! 클래스를 이용해서 어떻게 만들지? new 명령어! 뒤에 메소드 처럼 괄호()는 생성자 메소드를 실행하는 것 생성 시 변수의 형태는 생성할 클래스와 같은 이름

조건문 만약 ~라면? ~하기 if ( condition ) statement; if ( condition ) 조건(condition)에 어떤 표현을 적고 boolean 형이 true면 statement를 실행 아니면 넘어감 1 > 2 또는 else로 분기 condition evaluated false if ( condition ) statement; statement true if ( condition ) statement; else

조건문 조건에 따라 다른 동작을 수행 시나리오 1 시나리오 2 조건의 범위는 메소드와 마찬가지로 { } 로 구분함 변수가 0보다 크면? A를 출력하고 그 이외에는 B를 출력 시나리오 2 변수가 5보다 크면? A를 출력하고, 5보다는 작으나 0보다 크면? B를 출력하고 그 이외에는 C를 출력 조건의 범위는 메소드와 마찬가지로 { } 로 구분함

조건문 이중, 삼중 조건문? 2의 배수이면서 5의 배수라면? 조건문 내에 새로운 조건문을 넣어서 여러 분기를 만들 수 있음

반복문 유사한 작업을 반복하기 위하여 사용 모든 반복분은 아래와 같은 설정이 필요함 반복문은 세 종류의 형태가 존재 시작 설정 지속 여부 조건 Boolean 형태의 어느 것이든 가능 반복문은 세 종류의 형태가 존재 While loop Do ~ while loop For loop

반복문 while ( condition ) statement; While loop 조건 판단 참이면 Statement 실행 실행 후 다시 조건 판단 아니면 넘어감 condition evaluated while ( condition ) statement; false statement true

반복문 While loop 특정 문장을 열 번 출력하고 싶다면? 한번 출력하고 하나 세고, 한번 출력하고 둘 세고, …. 숫자를 저장할 공간을 먼저 만들어야겠죠? 열 번째를 세고 멈추면 됨

직접 해보기! 1에서 100까지 더하기 구구단 만들어보자 1~9까지 각각 1~9까지 곱한 후 출력!

직접 해보기! 윤년 찾기 윤년은 1년이 정확히는 365.2422일이기 때문에 이를 보정하기 위하여 대략 4년에 한번씩 윤년을 넣어 이를 보정하는 것 윤년의 조건은 다음과 같음 4의 배수인 해는 윤년임 100의 배수인 해는 윤년에서 뺌 400의 배수인 해는 도로 윤년으로 함 다음 데이터를 테스트 윤년 2002, 2008 비윤년 1997, 2100 필요한 변수는? 입력 연도 필요한 제어문은? 다중 if문

THANKS

환경 설정하기 설치할 것들 자바 개발 툴 설치 자바 개발 키트 (Java Development Kit) 에디터 (Eclipse) 자바 개발 툴 설치 구글에서 “java jdk” 검색 첫 번째 결과에 접속 JDK 다운로드

환경 설정하기 자바 개발 툴 설치 약관 동의 윈도우 x86 버전으로 다운로드 다운 받은 파일 실행 변경 없이 ‘다음’ 연타로 설치 진행 자바 정상 설치 확인 시작+R 버튼 ‘cmd’ 입력 후 엔터 ‘java –version’ 입력

환경 설정하기 IDE 설치 Eclipse.org 접속 -> 우상단 Download -> Download packages Eclipse installer 32bit 다운로드 기부 관련은 무시 실행 후 맨 위 IDE for java 클릭 별다른 변경 없이 Next로 진행