Language/Java (총 22개) 썸네일형 리스트형 Java - Eclipse에서 Gradle프로젝트 생성한 뒤 Build 하기 Eclipse에서 Gradle 프로젝트 만들고 실행하기 IntelliJ에서 편하게 Gradle 프로젝트를 작성하여 빌드하다가 Gradle을 공부한뒤 Eclipse에서 직접 Gradle 프로젝트를 만들고 Build를 해보기 위해 포스팅을 합니다~. 당연히 Gradle이 설치가 되어있어야 합니다 1. Gradle Project 생성 너무나 간단합니다 Gradle설치를 완료했으면 New -> Other을 클릭합니다. Gradle을 검색한 뒤 Gradle Project를 클릭하고 Next를 클릭합니다. 적절한 이름을 입력한 뒤 Finish를 클릭하면 생성이 완료됩니다. 너무 간단하죠? 2. Gradle을 이용해 Build하기빌드를 하기전 우선 Test를 위해 Class 하나를 생성하겠습니다. src/main/j.. Java - 직렬화에 관해서(csv, json, java serializable) Java 직렬화 이번 포스팅에서는 Java 책을 통해서만 접했던 직렬화에 대해 알아보려고 합니다. O'REILLY사의 Headfirst Java 와 우아한형제들 기술블로그를 참고하여 작성했습니다. 1. Java의 직렬화란?- 자바 시스템 내에서 사용하는 객체 또는 데이터를 자바시스템 외에서도 사용할 수 있도록 Byte형태로 데이터를 변환하는 기술과 Byte로 변환된 데이터를 다시 객체로 변환(역직렬화)하는 기술입니다. 1.1 Java의 직렬화 방법package com.java.ex;public class Car implements Serializable { ...}우선 직렬화하려는 클래스에 Serializable인터페이스를 구현하여 해당 클래스가 직렬화가 가능함을 알려주어야 합니다. (Serializb.. Java - JRE vs JDK 1. JRE (Java Runtime Environment)- JVM이 자바 프로그램을 실행할때 필요한 라이브러리 및 기타 파일들을 포함한다- JVM 실행환경 2. JDK (Java Development Kit)- JRE + 개발을 위한 도구(javac, java) Java - 상속 super super- 부모객체를 지정하는 키워드 이다 1. Class1) Car- Truck의 부모 클래스 2) Truck- Car를 상속받는 자식 클래스 3) Main- 테스트 클래스 2. super()- 자식 객체의 생성자에서 부모 객체의 생성자를 호출할 때 사용하는 키워드이다. 1) super() 메소드 사용Truck의 생성자에서 super(); 메소드를 사용한다 Car를 참조변수로 하여 Truck객체를 생성한다 Car생성자가 초기화 된 후 Truck의 생성자가 호출된것을 볼 수 있다. ! 이러면 어떻게 될까?Truck을 참조변수로 하는 Truck을 생성한다 똑같은 결과가 나타난다 Car객체를 생성해본다 Car의 생성자만이 초기화 되었다.=> 참조변수는 말그대로 객체의 레퍼런스가 담길 그릇만을 선언하고 실질.. Java - Call by Value와 Call by Reference JAVA는 Call by Value- 우선 JAVA는 항상 Call by Value 이다.- http://mussebio.blogspot.com/2012/05/java-call-by-valuereference.html 값참조(Call by value)- 변수의 값을 복사해 함수의 매개변수로 전달하는 것- 때문에 넘겨받은 함수의 인자값을 아무리 변경해도 외부에서 그 값은 변경되지 않는다 public class Test { public static void swap(int x, int y) { int temp = x;x = y;y = temp; } public static void main(String[] args) { int a = 10; int b = 20; swap(a,b); } } *오해 할만한 것-.. Java - Static 이해 이전 시간에 JVM에 관해 포스팅을 한적이 있다 먼저 그글을 읽어야 이해가 쉬울 것이다 (http://galid1.tistory.com/143) Static 이란- static 키워드는 클래스 차원의 변수와 메서드를 만들때에 사용되는 키워드이다 => 이와 반대로 static 키워드가 붙지 않는 변수,메서드는 인스턴스 변수 ,메서드 라고 불린다. - instance를 생성할때마다 생성되지 않고 클래스 로딩시 단 한번만 Class Areas에 생성된다. (메모리상의 이점 : 인스턴스마다 변수를 갖지 않으므로) - static 키워드가 붙은 변수 , 메소드는 Class Areas에 먼저 상주하게 되므로 객체 생성이 필요 없다 - Class Areas에 상주하므로 Class의 모든 instance가 공유하게 된.. Java - 초기화 순서 JAVA 초기화 순서1. static 변수2. 인스턴스 변수3. 생성자 123456789101112131415161718192021public class ClassLoad { static { System.out.println("static 영역"); } { System.out.println("인스 턴스 영역"); } public ClassLoad() { System.out.println("생성자 호출"); } public static void main(String[] args) { // TODO Auto-generated method stub ClassLoad load; load = new ClassLoad(); } } Colored by Color Scriptercs 결과 Java - 자바 가상머신(JVM: Java Virtual Machine) JVM 이란?- 프로그램을 실행하기 위해 물리적 머신과 유사하게 소프트웨어로 머신을 만든 것- JAVA와 OS사이에서 중개자 역할을 하여 OS와 독립적으로 JAVA가 실행 가능하게 한다.(참조 - http://asfirstalways.tistory.com/m/158https://dev-jangwon.github.io/java/2017/06/26/java-jvm/) JAVA 프로그램 실행과정 1. 프로그램 실행시 OS로 부터 필요로하는 메모리를 할당 받는다2. Javac 가 소스코드인 .java파일을 읽어 바이트코드(.class)로 컴파일 한다.3. Class Loader가 필요한 class 파일들을 동적으로 로딩한다4. 로딩된 class파일들은 Execution Engine을 통해 해석된다5. 해석된 바.. 이전 1 2 3 다음