본문 바로가기

분류 전체보기

Java Reflection 사용하기 (6) 이 문서는 Oracle Technology Network에 포스팅되었던 Using Java Reflection을 참고하여 작성되었습니다. 원문은 아래의 링크에서 확인하실 수 있습니다. Using Java Reflection https://www.oracle.com/technetwork/articles/java/javareflection-1536171.html 새로운 객체 생성하기 생성자를 호출하는 것은 새로운 객체를 생성한다는 측면에서 단순한 함수 호출과는 다르다고 할 수 있습니다. (정확히는 새 객체를 만든다는 것은 메모리 할당과 객체의 생성을 포함하는 것입니다.) 그렇기 때문에 앞의 함수 호출의 예와 최대한 유사한 예시를 찾아보면 아래와 같습니다. import java.lang.reflect.*; p..
Java Reflection 사용하기 (5) 이 문서는 Oracle Technology Network에 포스팅되었던 Using Java Reflection을 참고하여 작성되었습니다. 원문은 아래의 링크에서 확인하실 수 있습니다. Using Java Reflectionhttps://www.oracle.com/technetwork/articles/java/javareflection-1536171.html 이름으로 함수 호출하기지금까지의 포스팅은 모두 reflection을 이용하여 class 정보를 가져오는 것이었지만, 단순히 정보를 가져오는 것에서 그치는 것이 아니라 이름을 이용하여 함수를 호출하는 등의 다른 활용방법도 존재합니다. import java.lang.reflect.*; public class method2 { public int add(i..
Java Reflection 사용하기 (4) 이 문서는 Oracle Technology Network에 포스팅되었던 Using Java Reflection을 참고하여 작성되었습니다. 원문은 아래의 링크에서 확인하실 수 있습니다. Using Java Reflectionhttps://www.oracle.com/technetwork/articles/java/javareflection-1536171.html Class Field 정보 가져오기Reflection을 이용하면 class에 정의된 data field 정보도 확인할 수 있습니다. import java.lang.reflect.*; public class field1 { private double d; public static final int i = 37; String s = "testing"; p..
Java Reflection 사용하기 (3) 이 문서는 Oracle Technology Network에 포스팅되었던 Using Java Reflection을 참고하여 작성되었습니다. 원문은 아래의 링크에서 확인하실 수 있습니다. Using Java Reflectionhttps://www.oracle.com/technetwork/articles/java/javareflection-1536171.html Class에서 정의된 함수 확인reflection을 사용하는 여러 방법들 중에서도 가장 기본적인 기능은 class에서 정의한 함수들을 확인할 수 있다는 것입니다. 구체적인 구현 내용은 아래와 같습니다. import java.lang.reflect.*; public class method1 { private int f1(Object p, int x) t..
Java Reflection 사용하기 (2) 이 문서는 Oracle Technology Network에 포스팅되었던 Using Java Reflection을 참고하여 작성되었습니다. 원문은 아래의 링크에서 확인하실 수 있습니다. Using Java Reflectionhttps://www.oracle.com/technetwork/articles/java/javareflection-1536171.html Reflection을 사용하기 위한 세팅앞서 사용한 Method와 같은 reflection class는 java.lang.reflect 패키지에 포함되어 있다. reflect class 들을 사용하기 위해서는 세 단계를 거쳐야한다. 첫번째 단계는 조작하고자 하는 java.lang.Class 객체를 가져오는 것입니다. java.lang.Class는 Ja..
Java Reflection 사용하기 (1) 이 문서는 Oracle Technology Network에 포스팅되었던 Using Java Reflection을 참고하여 작성되었습니다. 원문은 아래의 링크에서 확인하실 수 있습니다. Using Java Reflectionhttps://www.oracle.com/technetwork/articles/java/javareflection-1536171.html Reflection은 Java 언어의 특징적인 기능이라고 할 수 있습니다. Reflection을 이용하면 작성된 Java 프로그램에 대한 검사가 가능해지며, 프로그램에 대한 자체적인 검사도 가능해집니다. 예를 들어 Java class를 구성하고 있는 모든 member에 대한 확인이 가능해집니다. Java class에 직접적인 접근으로 프로그램을 검사하..
Expo로 React Native 앱 개발하기 React Native는 JavaScript와 React 기술을 이용하여 Native 앱을 개발할 수 있는 기술입니다. Ionic 등의 하이브리드 앱은 앱 내부에 Web View를 이용하여 구현되는 방식이지만, React Native는 React와 JavaScript로 구성된 코드를 Mobile 환경에 맞춘 Native 코드로 전환해주는 것이기 때문에 성능상에서 우월하며, 기본적으로 제공되는 API를 거의 제한없이 사용할 수 있습니다. 또한 내부적인 구현이 React와 매우 흡사하기 때문에 기존의 React를 이용하여 front-end 개발을 해왔던 사람이라면 매우 간단하게 React Native 기술을 습득할 수 있고, 이를 이용하여 모바일 앱을 개발할 수 있습니다. 우선 React Native 개발자..
Autoboxing과 AutoUnboxing Java의 경우 기본형(Primitive types) 데이터를 직접 자료구조에 저장하지 못하는 경우, 기본형 데이터를 감싸주는 객체로 다뤄야하는 경우가 생긴다. 대표적으로 Java Collections(List, Set, Map 등)의 자료구조를 들 수 있으며, 해당 자료구조는 int, long, double 타입 등의 기본형 자료를 직접 다룰 수 없다. 이경우 직접 사용자가 기본형을 감싸주는 wrapper class 를 구현하여 사용해도 되겠지만, 일반적으로 Java에서 지원하는 Integer, Long, Double 등의 class를 사용하는 것이 편리하다. 이 클래스들은 일반적으로 생성자 함수에 데이터를 넣고, -value 함수를 이용하여 데이터를 꺼내오게 되는데 이를 Boxing, Unboxing..