728x90
반응형

프로그래밍 언어/JAVA 172

Mac에 Java 8을 설치하는 방법

질문 : Mac에 Java 8을 설치하는 방법 편집자 주 :이 질문은 2014 년에 제기되었으며 답변이 오래되었을 수 있습니다. Java 8이 필요한 최신 JavaFX로 프로그래밍을하고 싶습니다. IntelliJ 13 CE 및 Mac OS X 9 Mavericks를 사용하고 있습니다. Oracle의 Java 8 설치 프로그램을 실행했는데 파일이 /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk 그러나 이전 버전은 /System/Library/Java/JavaFrameworks/jdk1.6.... /System/Library 대신 /Library 넣는 이유가 무엇인지 확실하지 않습니다 (또는 차이점이 무엇인지). 그러나 /usr/libexec/java_home 은 1..

Java의 native 키워드의 의미

질문 : Java의 기본 키워드는 무엇입니까? 이 퍼즐 (자바 키워드 퀴즈 게임)을하면서 native 키워드를 발견했습니다. Java의 기본 키워드는 무엇에 사용됩니까? 답변 native 키워드는 메서드에 적용되어 메서드가 JNI (Java Native Interface)를 사용하여 네이티브 코드로 구현되었음을 나타냅니다. 출처 : https://stackoverflow.com/questions/6101311/what-is-the-native-keyword-in-java-for

JavaScript 객체를 출력(디버깅) 하는 방법

질문 : JavaScript 객체를 어떻게 표시 할 수 있습니까? 변수를 alert 할 때와 같은 문자열 형식으로 JavaScript 객체의 내용을 어떻게 표시합니까? 개체를 표시하려는 동일한 형식의 방법입니다. 답변 디버깅 목적으로 개체를 인쇄하려면 다음 코드를 사용하십시오. var obj = {prop1: 'prop1Value', prop2: 'prop2Value', child: {childProp1: 'childProp1Value'}} console.log(obj) 표시됩니다 : 참고 : 개체 만 기록해야합니다. 예를 들어 다음은 작동하지 않습니다. console.log('My object : ' + obj) 참고 ' log 메서드에 쉼표를 사용할 수도 있습니다. 그러면 출력의 첫 번째 줄이 문자열..

Java에서 다른 생성자를 호출하는 방법

질문 : Java에서 다른 생성자를 어떻게 호출합니까? (하위 클래스가 아닌 동일한 클래스 내에서) 다른 생성자를 호출 할 수 있습니까? 그렇다면 어떻게? 그리고 다른 생성자를 호출하는 가장 좋은 방법은 무엇일까요 (여러 가지 방법이있는 경우)? 답변 예, 가능합니다 : public class Foo { private int x; public Foo() { this(1); } public Foo(int x) { this.x = x; } } 같은 클래스의 생성자 대신 특정 슈퍼 클래스 생성자에 연결하려면 this 대신 super 를 사용하십시오. 하나의 생성자에만 연결할 수 있으며 생성자 본문의 첫 번째 문이어야합니다 . C #에 관한 것이지만 동일한 원칙이 적용되는 이 관련 질문을 참조하십시오. 출처 :..

Java에서 ==와 equals ()의 차이점

질문 : Java에서 ==와 equals ()의 차이점은 무엇입니까? 이 내용을 올바르게 이해했는지 명확히하고 싶었습니다. == 는 참조 비교입니다. 즉, 두 개체가 동일한 메모리 위치를 가리 킵니다. .equals() 는 객체의 값 비교로 평가됩니다. 답변 일반적으로 귀하의 질문에 대한 대답은 "예"이지만 ... .equals(...) 는 비교하기 위해 작성된 내용 만 비교합니다. 클래스가 equals 메서드를 재정의하지 않으면이 메서드를 재정의 한 가장 가까운 부모 클래스 equals(Object o) 재정의를 제공 한 부모 클래스가 없으면 기본적으로 최종 부모 클래스 인 Object의 메서드가 사용되므로 Object#equals(Object o) 메서드가 남습니다. Object API에 따라 이것은..

Java에서 일반 배열을 만드는 방법

질문 : Java에서 일반 배열을 만드는 방법은 무엇입니까? Java 제네릭 구현으로 인해 다음과 같은 코드를 가질 수 없습니다. public class GenSet { private E a[]; public GenSet() { a = new E[INITIAL_ARRAY_LENGTH]; // error: generic array creation } } 형식 안전성을 유지하면서 어떻게 구현할 수 있습니까? Java 포럼에서 다음과 같은 솔루션을 보았습니다. import java.lang.reflect.Array; class Stack { public Stack(Class clazz, int capacity) { array = (T[])Array.newInstance(clazz, capacity); } pr..

Java "."(점)으로 분할 된 문자열을 만드는 방법

질문 : "."로 분할 된 Java 문자열 (점) 이 코드의 두 번째 줄에서 ArrayIndexOutOfBoundsException 이 발생하는 이유는 무엇입니까? String filename = "D:/some folder/001.docx"; String extensionRemoved = filename.split(".")[0]; 작동하는 동안 : String driveLetter = filename.split("/")[0]; Java 7을 사용합니다. 답변 리터럴 점으로 분할하려면 점을 이스케이프해야합니다. String extensionRemoved = filename.split("\\.")[0]; 그렇지 않으면 정규식에서 분할됩니다 . , "모든 문자"를 의미합니다. 정규식에서 단일 백 슬래시를 만..

Java에서 파일의 파일 확장자를 얻는 방법

질문 : Java에서 파일의 파일 확장자를 어떻게 얻습니까? 분명히 말하면 MIME 유형을 찾고 있지 않습니다. 다음 입력이 있다고 가정 해 보겠습니다. /path/to/file/foo.txt 이 입력, 특히 확장에 대한 .txt 로 나누는 방법을 원합니다. Java에서 이것을 수행하는 방법이 있습니까? 내 자신의 파서를 작성하는 것을 피하고 싶습니다. 답변 이 경우 Apache Commons IO의 FilenameUtils.getExtension 을 사용하십시오. 다음은 사용 방법의 예입니다 (전체 경로 또는 파일 이름 만 지정할 수 있음). import org.apache.commons.io.FilenameUtils; // ... String ext1 = FilenameUtils.getExtensio..

NullPointerExceptions를 방지하기 위해 어떤 @NotNull Java 주석을 사용해야 할까?

질문 : 어떤 @NotNull Java 주석을 사용해야합니까? NullPointerExceptions를 방지하기 위해 IDE 코드 검사 및 / 또는 정적 코드 분석 (FindBugs 및 Sonar)과 같은 도구를 사용하는 것뿐만 아니라 코드를 더 읽기 쉽게 만들고 싶습니다. 많은 도구가 서로의 @NotNull / @NonNull / @Nonnull 주석과 호환되지 않는 것처럼 보이며 모두 내 코드에 나열하면 읽기가 끔찍합니다. 어떤 것이 '최고'인지에 대한 제안이 있습니까? 내가 찾은 동등한 주석 목록은 다음과 같습니다. javax.validation.constraints.NotNull 정적 분석이 아닌 런타임 유효성 검사를 위해 생성되었습니다. 선적 서류 비치 edu.umd.cs.findbugs.ann..

java.lang.NoClassDefFoundError 해결 방법 : javax / xml / bind / JAXBException

질문 : java.lang.NoClassDefFoundError 해결 방법 : javax / xml / bind / JAXBException Java 6/7/8에서 JDK의 일부로 제공되는 JAXB API 클래스를 사용하는 코드가 있습니다. Java 9로 동일한 코드를 실행하면 런타임에 JAXB 클래스를 찾을 수 없다는 오류가 발생합니다. JAXB 클래스는 Java 6 이후 JDK의 일부로 제공되었는데, Java 9에서 더 이상 이러한 클래스를 찾을 수없는 이유는 무엇입니까? 답변 JAXB API는 Java EE API로 간주되므로 Java SE 9의 기본 클래스 경로에 더 이상 포함되지 않습니다. Java 11에서는 JDK에서 완전히 제거됩니다. Java 9에는 모듈 개념이 도입되었으며 기본적으로 ja..

Java에서 파일을 byte []로 변환하는 방법

질문 : Java에서 파일을 byte []로 java.io.File 을 byte[] 로 어떻게 변환합니까? 답변 그것은 당신에게 가장 좋은 것이 무엇인지에 달려 있습니다. 생산성이 현명하고 바퀴를 재발 명하지 말고 Apache Commons를 사용하십시오. 여기 FileUtils.readFileToByteArray(File input) 입니다. 출처 : https://stackoverflow.com/questions/858980/file-to-byte-in-java

JAVA Implements vs extends 차이점과 사용시기

질문 : 구현 vs 확장 : 언제 사용합니까? 차이점이 뭐야? 이해하기 쉬운 언어 또는 일부 기사 링크로 설명하십시오. 답변 extends 는 클래스를 확장 하기위한 것입니다. implements 은 인터페이스 를 구현하기위한 것입니다. 인터페이스와 일반 클래스의 차이점은 인터페이스에서 선언 된 메서드를 구현할 수 없다는 것입니다. 인터페이스를 "구현"하는 클래스 만이 메소드를 구현할 수 있습니다. 인터페이스에 해당하는 C ++는 추상 클래스입니다 (정확히 동일하지는 않지만 거의). 또한 Java는 클래스에 대한 다중 상속을 지원하지 않습니다. 이것은 여러 인터페이스를 사용하여 해결됩니다. public interface ExampleInterface { public void doAction(); publ..

Java 쿼리 문자열 매개 변수의 URL 인코딩

질문 : 쿼리 문자열 매개 변수의 Java URL 인코딩 URL이 있다고 http://example.com/query?q= 사용자가 입력 한 다음과 같은 쿼리가 있습니다. 임의의 단어 £ 500 bank $ 결과가 올바르게 인코딩 된 URL이되기를 원합니다. http://example.com/query?q=random%20word%20%A3500%20bank%20%24 이를 달성하는 가장 좋은 방법은 무엇입니까? URLEncoder 시도하고 URI / URL 개체를 만들었지 만 어느 것도 제대로 나오지 않았습니다. 답변 URLEncoder 는 갈 길입니다. 당신은 확실하지 쿼리 문자열 매개 변수를 구분 문자, 인코딩에 마음 만 개별 쿼리 문자열 매개 변수 이름 및 / 또는 값이 아닌 전체 URL을 유지할..

JavaScript 링크 "#" vs "javascript : void (0)"

질문 : JavaScript 링크 "#"또는 "javascript : void (0)"에는 어떤 "href"값을 사용해야합니까? 다음은 JavaScript 코드 실행만을 목적으로하는 링크를 작성하는 두 가지 방법입니다. 기능, 페이지로드 속도, 유효성 검사 목적 등에서 어느 것이 더 낫습니까? function myJsFunc() { alert("myJsFunc"); } Run JavaScript Code 또는 function myJsFunc() { alert("myJsFunc"); } Run JavaScript Code 답변 javascript:void(0) 합니다. 세 가지 이유. # 사용을 장려하면 필연적으로 다음과 같은 함수의 반환 값을 사용하게됩니다. function doSomething() { ..

Java Swing에서 set (Preferred | Maximum | Minimum) Size 메서드를 사용하면 안되는 이유

질문 : Java Swing에서 set (Preferred | Maximum | Minimum) Size 메서드를 사용하지 않아야합니까? 다음 방법의 사용을 제안한 것에 대해 여러 번 비판을 받았습니다. Swing 구성 요소에. 표시된 구성 요소 간의 비율을 정의하려는 경우 사용에 대한 대안이 없습니다. 나는 이것을 들었다 : 레이아웃을 사용하면 대답은 항상 동일합니다. 적합한 LayoutManager를 사용하세요. 웹을 조금 검색했지만 주제에 대한 포괄적 인 분석을 찾지 못했습니다. 그래서 다음과 같은 질문이 있습니다. 답변 이러한 방법의 사용을 완전히 피해야합니까? - 예, 애플리케이션 코드입니다. 방법은 이유가 있습니다. 그렇다면 언제 사용해야합니까? 어떤 맥락에서? 어떤 목적으로? - 개인적으로 ..

Java Class에서 canonical name, simple name, class name의 차이점

질문 : Java 클래스에서 표준 이름, 단순 이름 및 클래스 이름의 차이점은 무엇입니까? Java에서 이들의 차이점은 무엇입니까? Object o1 = .... o1.getClass().getSimpleName(); o1.getClass().getName(); o1.getClass().getCanonicalName(); Javadoc을 여러 번 확인했지만 이것이 잘 설명되지 않습니다. 나는 또한 테스트를 실행했으며 이러한 메서드가 호출되는 방식의 실제 의미를 반영하지 않았습니다. 답변 확실하지 않은 경우 먼저 테스트를 작성해보십시오. 저는 이것을 했어요: class ClassNameTest { public static void main(final String... arguments) { printNam..

jQuery를 사용하여 JavaScript 개체에서 select 항목에 옵션을 추가하는 가장 좋은 방법

질문 : jQuery를 사용하여 JavaScript 개체에서 선택 항목에 옵션을 추가하는 가장 좋은 방법은 무엇입니까? jQuery를 사용하여 JavaScript 객체에서 옵션을 추가하는 가장 좋은 방법은 무엇입니까? 나는 플러그인이 필요하지 않은 것을 찾고 있지만 거기에있는 플러그인에도 관심이있을 것입니다. 이것이 내가 한 일입니다. selectValues = { "1": "test 1", "2": "test 2" }; for (key in selectValues) { if (typeof (selectValues[key] == 'string') { $('#mySelect').append('' + selectValues[key] + ''); } } 깔끔하고 간단한 솔루션 : 이것은 matdumsa의 정리..

JavaScript를 사용하여 이미지를 Base64 문자열로 변환하는 방법

질문 : JavaScript를 사용하여 이미지를 Base64 문자열로 변환하려면 어떻게해야합니까? 내 이미지를 서버로 보낼 수 있도록 이미지를 Base64 문자열로 변환해야합니다. 이것에 대한 JavaScript 파일이 있습니까? 그렇지 않으면 어떻게 변환 할 수 있습니까? 답변 를 사용할 수 있습니다. 캔버스를 만들고 이미지를로드 한 다음 toDataURL() 을 사용하여 Base64 표현을 가져옵니다 (실제로는 data: URL이지만 Base64로 인코딩 된 이미지가 포함되어 있음). 출처 : https://stackoverflow.com/questions/6150289/how-can-i-convert-an-image-into-base64-string-using-javascript

Java의 CharSequence VS String

질문 : Java의 CharSequence VS String? Android 프로그래밍에서 대부분의 텍스트 값은 CharSequence 예상됩니다. 왜 그런 겁니까? CharSequence 를 String 보다 사용하면 어떤 영향이 있습니까? 주요 차이점은 무엇이며이를 사용하고 서로 변환하는 동안 예상되는 문제는 무엇입니까? 답변 문자열은 CharSequences 이므로 걱정할 필요없이 문자열 만 사용할 수 있습니다. Android는 StringBuffers와 같은 다른 CharSequence 객체도 지정할 수 있도록하여 도움을 주려고합니다. 출처 : https://stackoverflow.com/questions/1049228/charsequence-vs-string-in-java

Java의 데몬 스레드

질문 : Java의 데몬 스레드는 무엇입니까? 아무도 Java에 어떤 데몬 스레드가 있는지 말해 줄 수 있습니까? 답변 데몬 스레드는 프로그램이 완료되었지만 스레드가 여전히 실행 중일 때 JVM이 종료되는 것을 방지하지 않는 스레드입니다. 데몬 스레드의 예는 가비지 컬렉션입니다. setDaemon(boolean) 메서드를 사용하여 스레드가 시작되기 전에 Thread 데몬 속성을 변경할 수 있습니다. 출처 : https://stackoverflow.com/questions/2213340/what-is-a-daemon-thread-in-java

Java에서 클래스를 정적으로 선언 할 수 없는 이유

질문 : Java에서 클래스를 정적으로 선언 할 수없는 이유는 무엇입니까? Java에서 클래스를 정적으로 선언 할 수없는 이유는 무엇입니까? 답변 중첩 된 클래스 만 정적 일 수 있습니다. 이렇게하면 외부 클래스의 인스턴스없이 중첩 된 클래스를 사용할 수 있습니다. class OuterClass { public static class StaticNestedClass { } public class InnerClass { } public InnerClass getAnInnerClass() { return new InnerClass(); } //This method doesn't work public static InnerClass getAnInnerClassStatically() { return new In..

Java에서 Base64 데이터 디코딩 하는 방법

질문 : Java에서 Base64 데이터 디코딩 Base64로 인코딩 된 이미지가 있습니다. Java에서 디코딩하는 가장 좋은 방법은 무엇입니까? Sun Java 6에 포함 된 라이브러리 만 사용하기를 바랍니다. 답변 v6부터 Java SE는 JAXB와 함께 제공됩니다. javax.xml.bind.DatatypeConverter 에는이를 쉽게 수행 할 수있는 정적 메소드가 있습니다. parseBase64Binary() 및 printBase64Binary() 참조하십시오. 출처 : https://stackoverflow.com/questions/469695/decode-base64-data-in-java

java.util.Date를 java.time.LocalDate로 변환하는 방법

질문 : java.util.Date를 java.time.LocalDate로 변환 java.util.Date 객체를 새로운 JDK 8 / JSR-310 java.time.LocalDate 로 변환하는 가장 좋은 방법은 무엇입니까? Date input = new Date(); LocalDate date = ??? 답변 짧은 답변 Date input = new Date(); LocalDate date = input.toInstant().atZone(ZoneId.systemDefault()).toLocalDate(); 설명 이름에도 불구하고 java.util.Date 는 "날짜"가 아니라 타임 라인의 순간을 나타냅니다. 객체 내에 저장된 실제 데이터는 1970-01-01T00 : 00Z (1970 년 GMT /..

728x90
반응형