자바 공부<1> - JAVA? C? , ,오버로드? , 환경변수 설정?

Posted by oimb
2018. 6. 26. 10:30 JAVA



자바 커피에 대한 이미지 검색결과


1. 자바? 자바는 왜 생겼지?  자바와 C의 차이?

언어 적인 측면이 아닌 시스템 측면에서 중요한 요소들을 되짚어 보고 공부하는 시간을 가졌다.

C 와 JAVA의 차이 , 왜 JAVA 가 생겼는지에 대해서, 자바의 JDK ,JRE ,JVM , 자바의 플랫폼 J2SE,J2EE,J2ME  , 자바의 명령어 , 그리고 웹 프로그래머가 되기 위한 공부 절차로 JAVA -> HTML5 ,CSS3 -> 퍼블리싱 ->DB ->JSP,JAVA Script -> SPRING -> RINUX 기반 서버 프로그램을 배워야 한다는 사실을 알게 되었다.



C와 JAVA 의 차이는 프로그램과 논리 중 어디에 더 중요치를 두는냐 라고 한다. C는 프로그래밍 위주 언어이지만 JAVA는 좀더 논리를 중요하게 여긴다고 하고 이에 따라 나오는 재사용성이 가장 큰 특징이다.  C는 하나의 로직을 사용하려면 함수와 그에 따르는 모든것(변수 타입 , 구조체)을 따와야 하고 심지어 호환이 되게끔 다시 짜야된다고 한다. 하지만 JAVA는 하나의 클래스가 하나의 역할이므로 그것만 따오면 된다고 한다.그리고 자바의 아이콘이 커피인데 , 이는 커피의 티백의 경우 넣다뺏다 하며 얼마든지 재사용 가능하기 때문에 , 또 여기서 아이디어를 얻었기 때문에 자바의 아이콘이 커피라고 하셨다.


다음으로 JDK , JRE , JVM 인데  이는 무거운 순서대로 나열 한것이다. 즉 JVM , JVM+CLASS LIB 합쳐진 것이 JRE , JRE+API가 합쳐진것이 JDK 라고 하셧다. JDK 는 개발을 위한것 JRE는 클라이언트의 실행을 위한 것  , JVM은 가장 베이스적으로 어디서든 자바가 돌아갈수있게 하기위한것이다.


그리고 자바의 플랫폼으로 J2SE , J2EE, J2ME 가 있는데

J2SE는 가장 기본적인것 으로 일반적인 프로그램 개발을 위한것이라고 생각하면 된다.

J2EE는 웹 개발, 웹 서버를 위한것으로 J2EE에 기능이 추가적으로 더해진것이다.

J2ME는 경량화된 것으로 임베디드 시스템을 위한것 이라고 생각하면 된다.

자바 몀령어는 간단하게 컴파일을 위한 javac 와 자바바이트코드 화된 (class)파일을 실행 하기 위한 java 명령어가 있다.


참고) 

프레임워크 사용 이유 : 유지보수성 증가  즉, 자주 뜯어고치는 경우에는 프레임웤이 있는 언어를 사용하자.


3. 오버로드?

오버로드 : 

1. 생성자의 초기값 세팅

2. 검증 과정에 있어 전처리 과정을 간다하게 하고 검증에 있는 논리에 집중해야 할때 전처리를 오버로딩으로 처리

3.각 클래스 마다 사용 해야하는 매서드의 경우 각각 파라미터가 다를수 있기 때문에 오버로딩을 사용


this   -> 각 클래스의 자신의 변수에 접근 할때

this() -> 항상 가장 위에서 코딩 해야 하면 자신의 생성자를 부른다.


4. 환경 변수?

환경 변수 설정  이유 

: 가장 큰 이유는 '어떤 경로에서 라도 java 프로그램을 접근 가능하게 하기 위해서다'

이는 즉 도스창 에서든 개발툴(이클립스) 등 어느 상황에서든간에 어디에서 접근하든가에 실행가능하게 하기 위해서 설정해주는 것이다.


보시다 시피 환경변수를 설정 하지 않을 경우 자바 명령어가 있는 full path를 입력해야만 사용할 수 있다.





환경변수에 등록한 변수는 다시 환경변수에서 이용할 수 있다. 환경변수 이름의 양 옆에 %를 붙이면 되는데 위의 예에서 Path를 보면 %JAVA_HOME%이라고 된 것을 발견할 수 있다

<츨처=http://s2junn.tistory.com/37>



추가적으로 


 환경변수는 크게 사용자변수와 시스템변수로 나뉩니다.

 

 사용자 변수는 그 사용자의 계정내에서만 적용되는 변수입니다. 즉, 해당 사용자 계정으로 컴퓨터 로그온시에만 적용되는 변수

 시스템변수 = 시스템변수는 시스템전반에 걸쳐 적용되는 변수입니다. 즉, 다른 계정으로도 해당 변수를 사용할 수 있는것이죠.



이 댓글을 비밀 댓글로