자바 (프로그래밍 언어): 두 판 사이의 차이

내용 삭제됨 내용 추가됨
편집 요약 없음
편집 요약 없음
1번째 줄:
{{프로그래밍 언어 정보
| 이름 = 자바<br />Java
| 로고 =<!-- [[파일:Java programming language logo.svg]] -->
| 패러다임 = 멀티[[프로그래밍 패러다임,]]: [[객체 지향 프로그래밍]] ([[클래스 기반 프로그래밍|클래스 기반]]), [[구조화구조적 프로그래밍|구조화]], [[명령형 프로그래밍|명령형]], [[제네릭 프로그래밍|제네릭]], [[반영 (컴퓨터 과학)|반영]], [[병행 컴퓨팅|병행]]
|연도 = [[1995년]] [[5월 23일]]
| 연도 = {{출시일|1995|5|23}}<ref>{{웹 인용 | url=http://www.forbes.com/sites/oracle/2015/05/20/javas-20-years-of-innovation/ | title=Java's 20 Years Of Innovation | publisher=Forbes | date=20 May 2015 | accessdate=18 March 2016 | author=Binstock, Andrew}}</ref>
| 설계자 = [[제임스 고슬링]]
| 개발자 = [[썬 마이크로시스템즈]] (지금은 [[오라클 (기업)|오라클]]에 합병됨)
|형 체계 =
| 형 체계 = [[자료형 체계|static, strong, safe]], [[:en:Nominal type system|nominative]], [[메니페스트 타이핑|메니페스트]]
| 구현체 = [[OpenJDK]], [[GCJ]], [[:분류:자바 가상 머신|등등]]
| 파일 확장자 = .java, [[자바 클래스 파일|.class]], [[JAR (파일 포맷)|.jar]]
| 영향을 받은 언어 = [[에이다|에이다 83]], [[C++]],<ref>{{웹 인용 | url=https://books.google.fr/books?id=0rUtBAAAQBAJ&lpg=PA133&pg=PA133#v=onepage&q&f=true|title=Cracking The Java Programming Interview :: 2000+ Java Interview Que/Ans |author=Harry. H. Chaudhary |accessdate=29 May 2016 |date=28 July 2014}}</ref> [[C 샤프|C#]],<ref>Java 5.0 added several new language features (the [[foreach loop|enhanced for loop]], [[Object type (object-oriented programming)#Autoboxing|autoboxing]], [[variadic function|varargs]] and [[Java annotation|annotations]]), after they were introduced in the similar (and competing) [[C Sharp (programming language)|C#]] language [http://www.barrycornelius.com/papers/java5/] [http://www.levenez.com/lang/]</ref> [[에펠]],<ref>{{웹 인용 |author1=Gosling, James |author2=McGilton, Henry |title=The Java Language Environment |date=May 1996 |url=http://www.oracle.com/technetwork/java/langenv-140151.html }}</ref> [[제네릭 자바]], [[메사]],<ref>{{웹 인용 |author1=Gosling, James |author2=Joy, Bill |author3=Steele, Guy |author4=Bracha, Gilad |title=The Java Language Specification, 2nd Edition |url= http://java.sun.com/docs/books/jls/second_edition/html/intro.doc.html#237601 }}</ref> [[모듈라-3]],<ref>{{웹 인용 |url=http://www.computerworld.com.au/index.php/id;1422447371;pp;3;fp;4194304;fpid;1 |title=The A-Z of Programming Languages: Modula-3 |publisher=Computerworld.com.au |accessdate=2010-06-09 }}</ref> [[오베론]],<ref>[[Niklaus Wirth]] stated on a number of public occasions, e.g. in a lecture at the Polytechnic Museum, Moscow in September, 2005 (several independent first-hand accounts in Russian exist, e.g. one with an audio recording: {{웹 인용 |author=Filippova, Elena|title=Niklaus Wirth's lecture at the Polytechnic Museum in Moscow|date=September 22, 2005|url=http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1155}}), that the Sun Java design team licensed the Oberon compiler sources a number of years prior to the release of Java and examined it: a (relative) compactness, type safety, garbage collection, no multiple inheritance for classes{{snd}} all these key overall design features are shared by Java and Oberon.</ref> [[오브젝티브-C]],<ref>[[Patrick Naughton]] cites [[Objective-C]] as a strong influence on the design of the Java programming language, stating that notable direct derivatives include Java interfaces (derived from Objective-C's [[Objective-C#Protocols|protocol]]) and primitive wrapper classes. [http://cs.gmu.edu/~sean/stuff/java-objc.html]</ref> [[UCSD 파스칼]],<ref>{{웹 인용 |url=http://www.fscript.org/prof/javapassport.pdf |quote=The project went ahead under the name "green" and the language was based on an old model of [[UCSD Pascal]], which makes it possible to generate interpretive code |title=History of Java |work=Java Application Servers Report |author=TechMetrix Research |year=1999 }}</ref><ref>{{웹 인용 |url=http://queue.acm.org/detail.cfm?id=1017013 |title=A Conversation with James Gosling – ACM Queue |publisher=Queue.acm.org |date=2004-08-31 |accessdate=2010-06-09 }}</ref> [[오브젝트 파스칼]]<ref>In the summer of 1996, Sun was designing the precursor to what is now the event model of the AWT and the JavaBeans TM component architecture. Borland contributed greatly to this process. We looked very carefully at Delphi Object Pascal and built a working prototype of bound method references in order to understand their interaction with the Java programming language and its APIs.[https://web.archive.org/web/20120627043929/http://java.sun.com/docs/white/delegates.html White Paper About Microsoft's "Delegates"]</ref>
|방언 = [[:en:Generics in Java|Java의 제네릭]], [[:en:Pizza (programming language)|피자]]
| 영향을 준 언어 = [[에이다|에이다 2005]], [[빈셸]], [[C 샤프|C#]], [[채플]],<ref name="chplspec">{{웹 인용|title=Chapel spec (Acknowledgements)|url=http://chapel.cray.com/spec/spec-0.98.pdf|date=2015-10-01|accessdate=2016-01-14|publisher=Cray Inc}}</ref> [[클로저]], [[ECMAScript]], [[팬텀]], [[그루비]], [[핵 (프로그래밍 언어)|핵]],<ref>{{웹 인용 |url=http://www.infoworld.com/article/2610885/facebook-q-a--hack-brings-static-typing-to-php-world.html |title=Facebook Q&A: Hack brings static typing to PHP world |publisher=InfoWorld |date=2014-03-26 |accessdate=2015-01-11 }}</ref> [[Haxe]], [[J 샤프|J#]], [[자바스크립트]], [[코틀린]], [[PHP]], [[파이썬]], [[스칼라]], [[Seed7]], [[발라]]
|영향을 받은 언어 = [[에이다|에이다 83]], [[C++]], [[C 샤프|C#]], [[에펠 (프로그래밍 언어)|에펠]], [[:en:Generics in Java|Java의 제네릭]], [[:en:Mesa (programming language)|메사]], [[:en:Modula-3|모듈라-3]], [[:en:Oberon (programming language)|오베론]], [[오브젝티브-C]], [[:en:UCSD Pascal|UCSD 파스칼]], [[오브젝트 파스칼]]
| 방언 = [[제네릭 자바]], [[피자 (프로그래밍 언어)|피자]]
|영향을 준 언어 = [[에이다|에이다 2005]], [[:en:BeanShell|빈쉘]], [[:en:Chapel (programming language)|체피]], [[C 샤프|C#]], [[클로저 (프로그래밍 언어)|클로저]], [[ECMA스크립트]], [[:en:Fantom (programming language)|팬텀]], [[그루비]], [[:en:Hack (programming language)|해킹]], [[:en:Haxe|헤렉]], [[:en:J Sharp|J#]], [[자바스크립트]], [[코틀린 (프로그래밍 언어)|코틀린]], [[PHP]], [[스칼라 (프로그래밍 언어)|스칼라]], [[:en:Seed7|씨드7]], [[발라 (프로그래밍 언어)|발라]]
| 라이선스 = [[GNU GPL일반 공중 사용 허가서]],<br />[[자바 커뮤니티 프로세스]]
| 웹사이트 = {{url|java.net}}
|최근 버전 =
| 파일 확장자 = .java, [[자바 클래스 파일|.class]], [[JAR (파일 포맷)|.jar]]
|최근 버전 출시일 =
}}
 
'''자바'''({{llang|en|Java}}, {{문화어|쟈바}})는 [[썬 마이크로시스템즈]]의 [[제임스 고슬링]]({{lang|en|James Gosling}})과 다른 연구원들이 개발한 [[객체 지향 프로그래밍|객체 지향적]] [[프로그래밍 언어]]이다. [[1991년]] 그린 프로젝트({{lang|en|Green Project}})라는 이름으로 시작해 [[1995년]]에 발표했다. 처음에는 가전제품 내에 탑재해 동작하는 프로그램을 위해 개발했지만 현재 [[웹 애플리케이션]] 개발에 가장 많이 사용하는 언어 가운데 하나이고, 모바일 기기용 소프트웨어 개발에도 널리 사용하고 있다. 현재 버전 9까지 출시했다.