1 / 34

자바 입문

자바 입문. 자바의 개요. 자바의 소개 애플릿과 애플리케이션 자바의 기본 패키지 자바의 기본 특징 자바의 주요 특징. 자바 언어의 역사 [1/3]. Sun Microsystems Inc. James Gosling 과 A rthur V an Hoff 1990 년 “ 그린프로젝트 ” 로 시작 1991 년 가전제품을 위한 언어로 개발 범용 개발 언어로 발전 Java Ja mes Gosling, A rthur V an Hoff, A ndy 인도네시아 산 커피 원료 이름.

Download Presentation

자바 입문

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 자바 입문

  2. 자바의 개요 • 자바의 소개 • 애플릿과 애플리케이션 • 자바의 기본 패키지 • 자바의 기본 특징 • 자바의 주요 특징

  3. 자바 언어의 역사 [1/3] • Sun Microsystems Inc. • James Gosling과 Arthur Van Hoff • 1990년 “그린프로젝트”로 시작 • 1991년 가전제품을 위한 언어로 개발 • 범용 개발 언어로 발전 • Java • James Gosling, Arthur Van Hoff, Andy • 인도네시아 산 커피 원료 이름

  4. 자바 언어의 역사 [2/3] • 1995년 5월 : JDK(java Development Kit) 알파버젼 발표 • 1996년 1월 : JDK 1.0 발표 • 1996년 2월 : 자바와 자바 스크립트를 지원하는 넷스케이프 2.0 발표 • 1996년 8월 : 자바를 지원하는 인터넷 익스플로러 3.0 발표 • 1998년 12월 : JDK 1.2를 발표하면서 자바2로 명명 • 1999년 6월 : JSP(java Sever Page)발표 • 2002년 5월 : JDK 1.4발표

  5. OS, 모든 플랫폼 및 PC Client-server 분산 환경 GUI 에서 작동될 수 있는 분산 응용 프로 ?? 그램은 없을까 NETWORK Server Mac 자바 언어의 역사 [3/3]

  6. 자바란? • 자바가 어디에 쓰이는지? • 왜 배워야 하는지? • 어떻게 활용할 수 있는지? • 자바는 C계열 언어로 프로그래밍 언어 중에서 5세대 언어에 속하는 새로운 언어이다. 1G 2G 5G 3G 4G 기계어 어셈블리 C FORTRAN BASIC PASCAL COBOL VB DELPHI PB JAVA C#

  7. 자바의 주요 특성 • 간단하며 친숙한 언어 • 객체지향 언어 • 플랫폼에 독립적(분산 환경에 적합) • 견고하고 보안에 강하다(안정성) • 이식성이 강하다 • 멀티스레드를 지원

  8. 간단하며 친숙한 언어 • 설계 목표 : • 작고 간단해서 쉽게 프로그래밍하고, 쉽게 디버깅하고, 쉽게 배울 수 있도록 하는 것 • C/C++의 복잡한 기능 일부 삭제 • 포인터 연산 삭제, 자동적인 메모리 관리 • 친숙한 언어 • 연산식과 문장 구조 : ANSI C 언어 • 객체 지향적인 개념 : C++ 언어

  9. 객체지향 언어 • 객체지향 언어 특성 • 자료 추상화(data abstraction) • 상속성(inheritance) • 다형성(polymorphism) • 다형성 • function overloading --- method overloading

  10. 플랫폼에 독립적 [1/3] • 아키텍춰에 독립적 • 플랫폼에 독립적인 Bytecode 사용 • JVM(Java Virtual Machine) • 기존 개발환경과의 비교

  11. 이진 파일 소스 코드 이진 파일 Pentium 컴파일러(Pentium) 이진 파일 PowerPC 컴파일러(PowerPC) SPARC 컴파일러(SPARC) 플랫폼에 독립적 [2/3] • 기존 프로그램 개발 환경

  12. 자바 인터프리터 자바 코드 자바 컴파일러 (Pentium) Pentium 자바 바이트코드 (플랫폼 독립적) 자바 인터프리터 자바 컴파일러 (PowerPC) PowerPC 자바 인터프리터 SPARC 자바 컴파일러 (SPARC) 플랫폼에 독립적 [3/3] • 자바 개발 환경

  13. 견고하고 보안에 강하다 • 포인터 제거 • 디버깅이 어려운 run-time 에러 발생 감소 • 엄격한 형 검사 • strongly typed language

  14. 동적이고 멀티 스레드를 지원 • 동적 링크 • 언어차원에서 멀티스레드를 지원

  15. C/C++에서 제거된 특성 [1/2] • typedef문, #define문 • 클래스와 인터페이스 • 구조체(struct)와 공용체(union) • 클래스로 대체 가능 • 함수(function) • 모두 메소드로 처리 • 다중상속(multiple inheritance) • 인터페이스는 다중상속 지원 • goto 문을 지원하지 않음. • 다중 레이블 break/continue문

  16. int myInt ; float myFloat = 3.141592f ; myInt = myFloat ; int myInt ; float myFloat = 3.141592f ; myInt = (int) myFloat ; C/C++에서 제거된 특성 [2/2] • 연산자 중복(operator overloading) • 강제적인 자동변환 • 명시적인 cast 연산 • Incompatible type for =. Explicit cast needed to convert float to int. myInt = myFloat; ^ • 포인터 연산을 제거.

  17. 애플릿과 애플리케이션 • 자바 응용 프로그램 • 애플리케이션 • 일반적인 프로그래밍 언어로 작성된 프로그램 • main() 메소드가 존재 • 애플릿 • 웹 브라우저 환경에서 실행하는 프로그램 • HTML과 연계해서 실행

  18. public class HelloWorld { public static void main(String[] args) { System.out.println( "Hello World!" ) ; } } PrintStream 클래스의 메소드 PrintStream 형의 객체 System 클래스 애플리케이션 만들기 • 간단한 프로그램 • public static void main() • System.out.println()

  19. HelloWorld.java 자바 컴파일러 (javac) 자바 인터프리터 (java) HelloWorld.class C:>javac HelloWorld.java C:>java HelloWorld Hello World! 자바 애플리케이션 실행과정 실행결과

  20. 애플릿 만들기 • 간단한 프로그램 • java.applet.Applet • paint(Graphics g) • import 문 import java.applet.Applet; import java.awt.Graphics ; public class HelloWorldApplet extends java.applet.Applet { public void paint( Graphics g ) { g.drawString( "Hello World!", 5, 25 ) ; } }

  21. HelloWorldApplet.java 웹 브라우저 혹은 appletviewer 자바 컴파일러 (javac) HelloWorldAppet.class 실행결과 HTML문서 자바 애플릿 수행과정 [1/2]

  22. 자바 애플릿 수행과정[2/2] • HTML 문서 작성 <HTML> <HEAD> <TITLE> Hello </TITLE> </HEAD> <BODY> <APPLET CODE="HelloWorldApplet.class" WIDTH=300 HEIGHT=80> </APPLET> </BODY> </HTML> C:>javac HelloWorldApplet.java C:>appletviewer HelloWorldApplet.html

  23. 프로그래밍 환경 • 프로그램 작성 • 편집기, 디버거 • 운영 환경 • 프로그램 실행 • 컴파일러, 실행시간 지원 시스템, 라이브러리 시스템 • JDK(Java Developers Kit) • 통합 환경(IDE) • Visual J++, Jbuilder, Symantec Cafe

  24. 자바환경과 자바 프로그램 2.1 자바 개발 환경 2.2 자바 통합환경 2.3 자바 응용 프로그램과 애플릿 프로그램 2.4 자바 응용 프로그램 2.5 자바 애플릿 프로그램

  25. 2.1 자바 개발 환경 • 선(Sun) 사에서 제공 • JDK = SDK • JDK1.2 = Java 2 SDK version 1.4.1 • SDK 설치 • SDK 소프트웨어 • http://java.sun.com/j2se/1.4.1/download.html • SDK 도구 • 자바 번역기 : javac.exe • 자바 해석기 : java.exe • 애플릿 프로그램 실행기 : appletviewer.exe • 자바 문서 생성기 : javadoc.exe • 자바 압축 도구 : jar.exe

  26. 2.2 자바 통합환경 • 선(Sun)사의 JDK는 자바프로그램을 개발하는데 필요한 컴파일러, 인터프리터 등을 제공한다. 하지만 통합 개발 환경을 지원하지 않기 때문에 프로그램을 작성하는데 불편하다. • 윈도우에 있는 메모장에서 자바 소스를 입력해서 도스 창에서 컴파일 하고 실행 • 자바를 처음 시작하는 사용자나 초보자에게 자바 프로그래밍을 위해 단순한 편집기인 EditPlus나 준 비주얼 도구인 Kawa의 사용을 권한다 • Kawa : 전문적인 통합환경과 같은 기능을 제공하지는 못하지만 프로그래밍을 위한 기본적인 통합환경의 기능을 충실하게 제공하고 있다. Kawa는 SDK를 기반으로 동작 • 통합환경 : 전문적인 자바 프로그램을 개발하기 위한 환경

  27. 2.3 자바 응용 프로그램과 애플릿 프로그램 • 자바 응용 프로그램 • C나 C++ 프로그램과 같은 일반적인 응용 프로그램 • 자바 애플릿 프로그램 • WWW 검색기나 애플릿 뷰어에서 실행되는 프로그램 • 작고 간단한 응용에 많이 사용된다 • 네트워크를 통하여 실행될 수 있으므로 개발환경과 실행환경의 독립성이 보장된다.

  28. 2.4 자바 응용 프로그램 • JDK는 별도의 편집기를 제공하지 않는다. 윈도우의 메모장이나 도스 편집기를 이용하여 프로그램을 작성 • // 프로그램 : Example1.java • class Example1 { • public static void main(String args[]) { • System.out.println("안녕하세요!! 첫 번째 자바 프로그램입니다"); • } • }

  29. 응용 프로그램의 번역과 실행

  30. 2.5 자바 애플릿 프로그램 • 애플릿 프로그램은 WWW검색기나 애플릿 뷰어에 의해 실행 // 프로그램 : Example2.java import java.applet.*; import java.awt.*; public class Example2 extends Applet { public void paint(Graphics g) { g.drawString("안녕하세요!! 두 번째 자바 프로그램입니다!", 100,60) } }

  31. 애플릿 프로그램의 번역과 실행 • 자바 컴파일러를 사용하여 번역 : javac Example2.java • 애플릿을 실행하기 위해서는 애플릿을 로드하는 HTML 파일을 작성하여야 한다. <HTML> <HEAD> <TITLE> 자바 프로그램 테스트 02 </TITLE> </HEAD> <BODY> <CENTER> <APPLET CODE= "Example2.class" WIDTH=400 HEIGHT=200 > </APPLET> </CENTER> </BODY> </HTML>

  32. 애플릿 프로그램의 실행(애플릿 뷰어)

  33. 애플릿 프로그램의 실행(WWW 검색기)

  34. 자바의 기본 패키지 • java.lang • 자바 컴파일러에 의해 자동으로 import • java.io • 스트림 입출력, 파일 입출력에 관련된 클래스 • java.net 패키지 • 소켓, 텔넷 인터페이스, URL • java.util • 벡터, 스택 , 해쉬테이블 등.. • java.awt - Abstract Window Toolkit • . . .

More Related