본문 바로가기

자바

자바 Day1

  • jdk[Java Development Kit] : 자바 플랫폼 중 하나를 구현한 것으로 리눅스, 맥os, 윈도우 자바 개발자를 대상으로 오라클에서 제공한다. 
  • javac : 자바 컴파일러, 자바 소스 파일을 바이트 코드로 변환해준다.
  • java : javac 컴파일러가 만든 클래스 파일을 해석 및 실행한다.
  • 환경 변수 설정 : 언제 어디서든지 쉽게 접근하기 위해서 / cmd 명령 프롬프트 창에서 컴파일을 하기위해서도 환경변수 설정을 해주어야 함. ex) JAVA_HOME 변수 생성 -> 경로 지정 
  • path설정 : %JAVA_HOME%\bin 폴더로 path 편집->추가  
  • cmd 기본 명령어 : dir:디렉터리에 있는 파일과 하위 디렉터리 목록을 보여줌 / clr: cmd화면을 지움/ \: 이동하고자 하는 하위 디렉터리  / tap키 : / echo: 메시지를 표시하거나 echo를 켜거나 끔/ cd : 폴더이동
  • 주석처리 : 코드를 나만 보는 것이 아니기 때문에 간결한 코드를 사용하고 주석을 이용해서 코드를 알기 쉽게 만들어 가독성을 높인다.
  • 스택영역/힙영역 : 
    더보기
    스택영역: 메모리의 스택영역은 함수의 호출과 관계되는 지역 변수와 매개변수가 저장되는 영역이다. 스택영역은 함수의 호출과 함께 할당되며, 함수의 호출이 완료되면 소멸한다. 메모리의 높은 주소에서 낮은 주소의 방향으로 할당된다. 
  • 더보기
    힙영역:  사용자가 직접관리할 수 있는 메모리 영역이다. 사용자에 의해 메모리 공간이 동적으로 할당되고 해제됨. 메모리의 낮은 주소에서 높은 주소 방향으로 할당된다.
  • Primitive type과reference type :
  • 기본형(Primitive Type): 기본형 변수는 참조하지 않고 실제 값을 저장함. 컴파일 시점에서 할당 메모리의 크기를 검사함. 총8개의 변수형이 존재(boolean,byte,short,int,long,float,double,char)  
  • Reference Type : 데이터 선언시 class, interface, delegate의 키워드를 사용. 데이터에 대한 참조가 저장되는 객체이다. 동적으로 heap에 할당된 data 주소 값을 저장한 변수를 스택에 갖는 것이다.
class ReferenceType {
	public String name;
    }
    
 public class exam01 {
 	public static void main (String aegs[]) {
    	ReferenceType ss = new ReferenceType(); // 참조하기 위한 객체 생성
        ss.name = "반가워요";
        System.out.println("hi," + ss.name) ;
        ReferenceType sss = ss; // sss에 ss 변수를 복사
        Systtem.out.println("만나서" + sss.name);
실행결과 
hi, 반가워요
만나서 반가워요
  • println: 변수의 값을 그대로 출력하므로, 값을 변환하지 않고는 다른 형식으로 출력할 수 없다.
  • printf : 지시자를 통해 변수의 값을 여러가지 형식으로 변환하여 출력할 수 있다.
public class Printf {
	public static void main(String args[]) {
    	int age = 26;
        string name = "joe";
        
        System.out.printf(" 내 나이는 %d 살입니다.%n" ,age);
        System.out.printf(" 내 이름은 %s 입니다.%n" ,name);
        	}
        }

 

실행결과 
내 나이는 26살 입니다.
내 이름은 joe입니다.

 

'자바' 카테고리의 다른 글

Day05  (0) 2021.05.10
1주차 예제를 통한 간단한 복습  (0) 2021.05.09
Day04  (0) 2021.05.07
Day03  (0) 2021.05.06
Day2  (0) 2021.05.04