https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

JAVA 설치, 문법, 개발환경

java
는 버전이 현재 14까지 나왔지만
실무에서는 jdk 8버전을 이용해서 진행한다.
SE standard edition 은 컴퓨터에서 돌려주는 프로그램이다.
window 64bit
회원가입하고 다운로드 받으면 된다.

C:\Program Files\Java\jdk1.8.0_202
여기까지를 java home 이라고 한다.
bin 밑에 보면 개발도구들이 모여있다.

1주일간은 edited plus 로 연습하겠다..

https://www.editplus.com/kr/download.html

에서 다운로드 받으면 된다.
jdk1.8.0_181 -----bin : 컴파일러, 인터프리터등 기타 개발 및 실행도구들
                 +-- demo: 데모코드(샘플파일)
                 +-- include : Native Code를 위한 C헤더 파일들
                        자바와 C를 동시 사용하는 프로그램 개발시 사용됨
                 +-- jre : 개발도구를제외하고실행에 필요한
                        최소한의 환경만을 제공
                 +-- lib : 실행파일들에의해사용되는
                        라이브러리파일들

3) jdk환경변수 설정
제어판-시스템-고급-환경변수-새로만들기
) JAVA_HOME 설정: C: \Program Files \Java \jdk1.8.0_181
) path설정 : %JAVA_HOME% \BIN
path는 있으므로 설정을 먼저 누르고 새로 만들기 하면된다.
) classpath설정 : .
새로만들기 하고 . 만 찍는다

cmd에서
javac, set path , set classpath 확인하면 된다.

java는 대소문자를 엄격하게 구분한다
파일을 저장할 때 class이름과 파일명이 같아야한다..
EditPlus에서 Hello.java 작성 해보기

//1.패키지 선언문 (최상단에 와야함)
//2.import문 (import 패키지명.클래스명)
//3.클래스 선언문
import java.lang.System;
import java.util.Date;

/*class 이름은 대문자로 시작. 명사형. 
class 명과 파일명은 반드시 동일해야 함. 대소문자도 동일
c같은 경우는 {} 밖에 작성이 가능하지만 java는 불가능하다.
lang은 java에서 기본적으로 import해준다.
*/

public class Hello //Hello.java
{	
	//단문 주석
	/*여러 라인 주석
	
	*/
	/**
	문서화 주석 : javadoc를 이용해 api문서를 만들 때 사용
	*/
	public static void main(String[] args)
	{
		System.out.println("Hello Java~");
		System.out.println("안녕 자바~~");
		System.out.print("Good Morning");
		System.out.print("\n좋은 아침입니다.");
		/*
		\n같은 것을 제어문자, escape 문자라고 한다.
		*/
	
		Date today = new Date();
		System.out.println(today);
        
        /* 제어문자 : 인쇄할 수 없거나 키보드로 표현할 수 없는 특별한 문자를 가리킨다.
        \n : 줄바꿈
        \t : 수평탭
        \r : 캐리지 리턴 스크린 커서를 현재줄의 처음으로 옮긴다.
        \\ : 역슬래시 출력
        \" : 큰따옴표를 출력
        \' : 작은따옴표 출력
        
        */
	}

}

문법에 맞게 작성했으면
cmd 에서 javac Hello.java를 했을 때 Hello.class 파일이 만들어진다.
Hello.class를 인터프리터를 이용해서 해석하면 java Hello를 치면 정상적으로 출력이 되어야한다.

java는 class에서 main을 찾고 한 줄씩 실행한다.

java기초할때는 주로 API사용법에 맞춰서 진행한다.
API
문서https://docs.oracle.com/javase/8/docs/api/

컴파일러 - 전체를 확인한 다음에 출력
인터프리터 - main부터 한 줄씩 실행하는 것이다.


JAVA의 특징


c같은 경우는 hardware에 따라 c코드가 달라짐
전자제품에 들어가는 언어였는데 하드웨어가 달라지더라도 사용할 수 있는 언어를 만들어보자해서 나온 것이 JAVA
java는 재사용성이 높다.

인터넷이 나오면서 인터넷의 특징이 다양한 브라우저에 사용가능해야했다. 이에 따라 JAVA가 사용되었음

1) 플랫폼 독립성: JVM(JavaVirtualMachine)이 해당 플랫폼마다 제공되어져,
                         이를 설치하면 어떤 운영체제에서 작성된 자바 파일이든지
                         동일한 실행을 제공한다
                          Write once run anywhere
2)객체 지향언어: 프로그램에서 사용되는 객체들을 만들고 이것들을 조립/연결
                        하여 전체 프로그램을 완성하는 프로그래밍 방식을 지향한다.
                       => 재사용성, 유연성, 생산성 향상,   class를 memory에 올리는 것을 객체라고 한다.
3) 멀티 스레드 지원 : Thread는 Process보다 작은 단위로 적은 메모리로
                              대용량 작업의 동시 다발적인 병렬 처리를 가능하게 한다.
4) 자동 메모리 관리 : -Garbage Collector(쓰레기 수집기)
                              c는 memory관리를 개발자가 해줘야한다.
5) 동적 로딩과 동적 성능 확장 제공 :
     애플리케이션이 실행될 때 모든 객체를 생성하지 않고 객체가 필요한 시점에
     클래스를 동적으로 로딩해서 객체를 생성함.
6) 함수적 스타일 코딩 지원:
    최근 부각되고 있는 함수적 프로그래밍을 위해 람다식을 자바8부터 지원함.
7) 풍부한 오픈소스 라이브러리 : 검증된 오픈소스 라이브러리들이 풍부하게 제공
    되어져 개발기간을 단축하고 안전성이 높은 애플리케이션 개발이 가능하다.

-------------------------------------------------------------------------

HTML
html 언어는 컴파일러 필요없이 작성하고 웹브라우저로 실행해주면 된다.

Hyper Text Mark-up Langage 의 줄임말이다.
웹페이지 제작 언어이다.
<    > 안에 정의 된 용어로 태그(tag)를 표현하므로 mark-up 언어라고 부른다.
HTML의 태그는 대소문자를 구분하지 않는다.
Html 문서 작성시 문장이나 그림 등의 구성요소와 배치 구조 등을 지정하는 언어이다
Html태그 만으로 작성 되어진 문서이며, 프로그램 논리가 없다.
확장자는 .htm 또는 .html을 갖는다
웹서비스 초기에는 이런 문서만을 사용하였다.

<!doctype html>
<!-- doctypedl html임을 명시 -->

<html>
	<head>
		<title>여긴 제목이 들어간다.</title>
	</head>
	<body bgcolor="gray">
	안녕 html<br> <!-- html 주석, <br>은 줄바꿈 태그 -->
	반가워요 HTML<br/>
	Bye bye~<BR/>
	<!--html 태그는 대소문자 구분하지 않는다.  -->
	<p>안녕하세요?</p>
	<!--p태그는 문단 태그, <BR>을 두번 준 효과를 나타낸다.
	p태그는 문단을 나누는 의미를 갖는 태그이기 떄문에 여러번 사용해도 한번 사용한 효과를 갖는다.-->
	안녕하세요?
	<hr color="red"> <!-- 수평선을 나타내는 태그, 단독 태그임 -->
	<hr color="blue" width ="400px" align="left">
	</body>
</html>


<!doctype html>
<html>
	<head>
		<title>문자열 형태</title>
	</head>
	<body>
		normal한 텍스트
		<h1>제목1</h1> <!--headline 태그  h1~h6  -->
		<h2>제목2</h2> <!--block element 자동으로 줄바꿈-->
		<h3>제목3</h3>
		<h4>제목4</h4>
		<hr color="blue">
		<b>볼드체</b>
		<i>이탤릭체</i><br> <!-- (in-line elemet) -->
		<small>작은 글자 태그</small><br>
		<sub>아래 첨자</sub>텍스트<sup>윗 첨자</sup><br>
		<ins>밑줄 글자</ins>
		<del>취소 태그</del>
		<time datetie="2020-04-09">2020년 4월 9일</time>
		<!-- time : 날짜와 시간정보를 의미적으로 표시
			 address: 연락처 태그(이메일 주소,웹사이트 주소)를 표시-->
		<address>chanqun.tistory.com</address>
	</body>
</html>


<!DOCTYPE html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="chanqun">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <title>ex03하이퍼링크.html</title>
 </head>
 <body>
  <h1>하이퍼링크</h1>
  <h2>a 태그를 사용하여 하이퍼링크</h2>
  <hr color="blue">
  </br>
  <a href="http://www.naver.com">네이버</a>
  <a href="http://www.google.com">구글</a>
  <!--현재 작성한 파일을 기준으로 상대적인 파일 경로를 기술하는 방식
  . : 현재 경로를 의미
  .. : 현재 경로의 상위 경로를 의미
  -->
  <a href="ex01.html"><h1>ex01.html페이지</h1></a>
  <a href="./ex02.html"><h1>ex02.html페이지</h1></a>
  <a href="../myjava"> 현재의 상위 경로</a><br>
  <!---->
  <a href="../myjava/test.html">test.html</a>
  <hr color="blue">
  <a href="file:///c://myjava/test.html">test.html가는 법2</a>
  <!--protocol 규약 경로가 잘못될 경우가 별로 없다.-->
  <a href="http://www.google.com" target="_blank"><img src="./google.png"></img></a>
  <!-- target _blank는 새로운 창을 띄워주는 기능-->
 </body>
</html>

 

+ Recent posts