728x90
반응형

프로그래밍 언어/JAVA 172

자바 스크립트 객체의 쿼리 문자열 인코딩

질문 : 자바 스크립트 객체의 쿼리 문자열 인코딩 GET 요청을 통해 전달할 수 string 로 인코딩하는 빠르고 간단한 방법을 알고 있습니까? jQuery 없음, 다른 프레임 워크 없음-일반 Javascript :) 답변 이렇게? serialize = function(obj) { var str = []; for (var p in obj) if (obj.hasOwnProperty(p)) { str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p])); } return str.join("&"); } console.log(serialize({ foo: "hi there", bar: "100%" })); // foo=hi%20there&bar=100%..

오류 : java: javacTask: source release 8 requires target release 1.8

질문 : 오류 : java : javacTask : 소스 릴리스 8에는 대상 릴리스 1.8이 필요합니다. IntelliJ IDE를 사용하면 프로젝트를 컴파일 할 수 없습니다. 아래 설정 스크린 샷 : 중고 JDK : 프로젝트 SDK 및 언어 수준 : 언어 수준 : 아무도 아이디어가 있습니까? 답변 Maven을 사용하는 경우 project 노드 아래의 pom.xml 에 컴파일러 플러그인을 추가합니다. org.apache.maven.plugins maven-compiler-plugin 1.8 1.8 (댓글에서 게양.) 참고 : 프로젝트를 다시 가져 오는 것이 마음에 들지 않는다면 실제로해야 할 일은 pom을 변경하고 프로젝트를 다시 가져 오는 것뿐입니다. 그러면 IntelliJ가 올바른 설정을 선택하므로 수..

Java [duplicate]에서 구분 기호 (split의 반대)를 사용하여 배열 요소를 결합하는 빠르고 쉬운 방법

질문 : Java [duplicate]에서 구분 기호 (split의 반대)를 사용하여 배열 요소를 결합하는 빠르고 쉬운 방법 관련 .NET 질문보기 ["a","b","c"] 가 "a,b,c" 가되도록 분할과 정확히 반대되는 작업을 빠르고 쉽게 수행 할 수있는 방법을 찾고 있습니다. 배열을 반복하려면 조건을 추가하거나 (마지막 요소가 아닌 경우 구분자를 추가) 하위 문자열을 사용하여 마지막 구분 기호를 제거해야합니다. 인증되고 효율적인 방법이 있다고 확신합니다 (Apache Commons?) 프로젝트에서 어떻게하는 것을 선호합니까? 답변 Java 8을 사용하면 매우 깔끔하게이 작업을 수행 할 수 있습니다. String.join(delimiter, elements); 이것은 세 가지 방식으로 작동합니다. 1..

자바 스크립트의 코드 구성과 관련하여 일반적으로 인정되는 모범 사례

질문 : 자바 스크립트의 코드 구성과 관련하여 일반적으로 인정되는 모범 사례 jQuery와 같은 JavaScript 프레임 워크가 클라이언트 측 웹 애플리케이션을 더 풍부하고 기능적으로 만들면서 한 가지 문제를 발견하기 시작했습니다. 세상에서 이것을 어떻게 정리하고 있습니까? 모든 핸들러를 한 자리에 놓고 모든 이벤트에 대한 함수를 작성 하시겠습니까? 모든 기능을 래핑하는 함수 / 클래스를 만드시겠습니까? 미친 듯이 작성하고 최선을 다하기를 바랍니다. 포기하고 새로운 경력을 얻으시겠습니까? jQuery에 대해 언급했지만 실제로는 일반적인 JavaScript 코드입니다. 줄에 줄이 쌓이기 시작하면 스크립트 파일을 관리하거나 원하는 것을 찾는 것이 더 어려워집니다. 내가 찾은 가장 큰 문제점은 동일한 작업을..

Java 8에서 map ()과 flatMap () 메소드의 차이점

질문 : Java 8에서 map ()과 flatMap () 메소드의 차이점은 무엇입니까? Stream.map() 과 Stream.flatMap() 메서드의 차이점은 무엇입니까? 답변 map 과 flatMap 은 모두 Stream 적용될 수 있으며 둘 다 Stream 반환합니다. 차이점은 map 작업은 각 입력 값에 대해 하나의 출력 값을 flatMap 작업은 각 입력 값에 대해 임의의 숫자 (0 개 이상의) 값을 생성한다는 것입니다. 이는 각 작업에 대한 인수에 반영됩니다. map 작업은 입력 스트림의 각 값에 대해 호출되고 하나의 결과 값을 생성 Function flatMap 작업은 개념적으로 하나의 값을 사용하고 임의의 수의 값을 생성하려는 함수를 사용합니다. 그러나 Java에서는 메서드가 0 또는 ..

JavaScript에서 클립 보드에 복사하는 방법

질문 : JavaScript에서 클립 보드에 복사하려면 어떻게합니까? 텍스트를 클립 보드 (다중 브라우저)에 복사하는 가장 좋은 방법은 무엇입니까? 나는 시도했다 : function copyToClipboard(text) { if (window.clipboardData) { // Internet Explorer window.clipboardData.setData("Text", text); } else { unsafeWindow.netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); const clipboardHelper = Components.classes["@mozilla.org/widget/clipboardhelper;1"]..

자바에서 확인 된 예외와 확인되지 않은 예외 이해

질문 : 자바에서 확인 된 예외와 확인되지 않은 예외 이해 "Effective Java "의 Joshua Bloch는 다음과 같이 말했습니다. 복구 가능한 조건에 대해 확인 된 예외를 사용하고 프로그래밍 오류에 대해 런타임 예외를 사용합니다 (2 판의 항목 58). 내가 이것을 올바르게 이해하는지 보자. 확인 된 예외에 대한 이해는 다음과 같습니다. try{ String userInput = //read in user input Long id = Long.parseLong(userInput); }catch(NumberFormatException e){ id = 0; //recover the situation by setting the id to 0 } 1. 위의 사항이 확인 된 예외로 간주됩니까? 2. ..

Java가 정적 메서드 재정의를 허용하지 않는 이유

질문 : Java가 정적 메서드 재정의를 허용하지 않는 이유는 무엇입니까? 정적 메서드를 재정의 할 수없는 이유는 무엇입니까? 가능하면 예를 사용하십시오. 답변 재정의는 클래스의 인스턴스가 있는지에 따라 다릅니다. 다형성의 요점은 클래스를 서브 클래 싱 할 수 있고 이러한 서브 클래스를 구현하는 객체는 수퍼 클래스에 정의 된 (하위 클래스에서 재정의 됨) 동일한 메서드에 대해 다른 동작을 갖게된다는 것입니다. 정적 메서드는 클래스의 인스턴스와 연결되어 있지 않으므로 개념을 적용 할 수 없습니다. 이에 영향을 미치는 Java의 설계를 추진하는 두 가지 고려 사항이 있습니다. 하나는 성능에 대한 우려였습니다. 스몰 토크가 너무 느리다는 비판이 많았고 (가비지 수집과 다형성 호출이 그 일부가 됨) Java 제..

Java는 "참조에 의한 전달" 일까? "값에 의한 전달" 일까?

질문 : Java는 "참조에 의한 전달"또는 "값에 의한 전달"입니까? 나는 항상 Java가 pass-by-reference를 사용한다고 생각했습니다. 그러나 저는 그렇지 않다고 주장하는 블로그 게시물 (예 : 이 블로그 )을 몇 개 보았습니다 (블로그 게시물에서는 Java가 값에 의한 전달을 사용한다고 말합니다). 나는 그들이 만드는 구별을 이해하지 못한다고 생각합니다. 설명은 무엇입니까? 답변 Java는 항상 값에 의한 전달 입니다. 불행히도 우리가 객체를 다룰 때 우리는 실제로 값으로 전달되는 참조라고 불리는 객체 핸들을 다룹니다. 이 용어와 의미는 많은 초보자를 쉽게 혼동합니다. 다음과 같이 진행됩니다. public static void main(String[] args) { Dog aDog = ..

Java에서 명령 줄 인수를 구문 분석하는 방법

질문 : Java에서 명령 줄 인수를 어떻게 구문 분석합니까? Java에서 명령 줄 인수를 구문 분석하는 좋은 방법은 무엇입니까? 답변 다음을 확인하십시오. http://commons.apache.org/cli/ http://www.martiansoftware.com/jsap/ 또는 자신의 롤 : http://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html 예를 들어 commons-cli 를 사용하여 2 개의 문자열 인수를 구문 분석하는 방법입니다. import org.apache.commons.cli.*; public class Main { public static void main(String[] args) throws Exception { Opt..

Java에서 public, protected, package-private, private의 차이점

질문 : Java에서 공용, 보호, 패키지 개인 및 개인의 차이점은 무엇입니까? class 및 interface 를 만들고 상속을 처리하는 동안 각 액세스 수정 자, 즉 기본 (패키지 private), public , protected 및 private 답변 공식 자습서 가 유용 할 수 있습니다. Class Package Subclass (same pkg) Subclass (diff pkg) World public + + + + + protected + + + + no modifier + + + private + + : 액세스 가능 공백 : 액세스 할 수 없음 출처 : https://stackoverflow.com/questions/215497/what-is-the-difference-between-pu..

volatile 키워드는 어디에 사용할 수 있을까?

질문 : volatile 키워드는 무엇에 유용합니까? 오늘 직장 volatile 키워드를 발견했습니다. 익숙하지 않아서이 설명을 찾았습니다. 해당 기사에서 문제의 키워드를 설명하는 세부 정보를 고려할 때 해당 키워드를 사용한 적이 있습니까? 아니면이 키워드를 올바른 방식으로 사용할 수있는 사례를 볼 수 있습니까? 답변 volatile 에는 메모리 가시성을위한 의미가 있습니다. volatile 필드의 값은 쓰기 작업이 완료된 후 모든 판독기 (특히 다른 스레드)에게 표시됩니다. volatile 없으면 독자는 업데이트되지 않은 일부 값을 볼 수 있습니다. 귀하의 질문에 답하기 위해 : 예, 일부 코드가 루프를 계속할지 여부를 제어 volatile 루프는 volatile 값을 true 계속됩니다. 조건은 "중..

JavaScript 배열을 쉼표로 구분 된 목록으로 바꾸는 쉬운 방법

질문 : JavaScript 배열을 쉼표로 구분 된 목록으로 바꾸는 쉬운 방법은 무엇입니까? 쉼표로 구분 된 목록으로 바꾸고 싶은 JavaScript에 1 차원 문자열 배열이 있습니다. 가든 다양한 JavaScript (또는 jQuery)에서 쉼표로 구분 된 목록으로 바꾸는 간단한 방법이 있습니까? (나는 배열을 반복하고 그것이 유일한 방법이라면 직접 연결하여 문자열을 만드는 방법을 알고 있습니다.) 답변 Array.prototype.join () 메서드 : var arr = ["Zero", "One", "Two"]; document.write(arr.join(", ")); 출처 : https://stackoverflow.com/questions/201724/easy-way-to-turn-javascri..

자바 스크립트에서 자체 실행 기능의 목적

질문 : 자바 스크립트에서 자체 실행 기능의 목적은 무엇입니까? 자바 스크립트에서 언제 이것을 사용하고 싶습니까? (function(){ //Bunch of code... })(); 이것에 : //Bunch of code... 답변 변수 범위 지정에 관한 것입니다. 자체 실행 함수에서 선언 된 변수는 기본적으로 자체 실행 함수 내의 코드에만 사용할 수 있습니다. 이를 통해 JavaScript 코드의 다른 블록에서 변수 이름이 지정되는 방식에 상관없이 코드를 작성할 수 있습니다. 예를 들어 Alexander 의 의견에서 언급했듯이 : (function() { var foo = 3; console.log(foo); })(); console.log(foo); foo 가 정의되지 않았기 때문에 먼저 3 cons..

Java에서 두 배열(List)을 결합하는 방법

질문 : Java에서 두 목록을 어떻게 결합합니까? 조건 : 원래 목록을 수정하지 마십시오. JDK 전용, 외부 라이브러리 없음. 한 줄짜리 또는 JDK 1.3 버전에 대한 보너스 포인트. 다음보다 더 간단한 방법이 있습니까? List newList = new ArrayList(); newList.addAll(listOne); newList.addAll(listTwo); 답변 Java 8에서 List newList = Stream.concat(listOne.stream(), listTwo.stream()) .collect(Collectors.toList()); 출처 : https://stackoverflow.com/questions/189559/how-do-i-join-two-lists-in-java

JAVA의 원시 유형은 무엇이며 왜 사용하지 않아야 하는가?

질문 : 원시 유형은 무엇이며 왜 사용하지 않아야합니까? Java의 원시 유형은 무엇이며 새 코드에서 사용해서는 안된다는 말을 자주 듣는 이유는 무엇입니까? 원시 유형을 사용할 수없는 경우 대안은 무엇이며 어떻게 더 나은가요? 답변 Java 언어 사양은 다음과 같이 원시 유형을 정의합니다. 원시 유형은 다음 중 하나로 정의됩니다. 수반되는 형식 인수 목록없이 제네릭 형식 선언의 이름을 사용하여 형성되는 참조 형식입니다. 요소 유형이 원시 유형 인 배열 유형입니다. 비 static 원시 형의 부재 형 R 의 수퍼 또는 슈퍼로부터 상속되지 R . 다음은 설명을위한 예입니다. public class MyType { class Inner { } static class Nested { } public static..

Java 7에서 다이아몬드 연산자 (<>)를 사용해야 하는 이유

질문 : Java 7에서 다이아몬드 연산자 ()의 요점은 무엇입니까? Java 7의 다이아몬드 연산자는 다음과 같은 코드를 허용합니다. List list = new LinkedList(); 그러나 Java 5/6에서는 간단히 다음과 같이 작성할 수 있습니다. List list = new LinkedList(); 유형 삭제에 대한 나의 이해는 이것들이 정확히 동일하다는 것입니다. (어쨌든 제네릭은 런타임에 제거됩니다). 왜 다이아몬드에 신경을 쓰나요? 어떤 새로운 기능 / 유형 안전성이 허용됩니까? 새로운 기능이 생성되지 않으면 왜 기능으로 언급합니까? 이 개념에 대한 나의 이해에 결함이 있습니까? 답변 문제 List list = new LinkedList(); 왼쪽에서는 일반 유형 List 을 사용하고 ..

Java의 "final" 의 작동 원리

질문 : Java의 "final"키워드는 어떻게 작동합니까? (나는 여전히 개체를 수정할 수 있습니다.) Java에서는 final 키워드를 사용하여 값이 변경되지 않도록 지정합니다. 하지만 클래스의 생성자 / 메서드에서 값을 변경할 수 있음을 알았습니다. 다시 말하지만 변수가 static 이면 컴파일 오류입니다. 다음은 코드입니다. import java.util.ArrayList; import java.util.List; class Test { private final List foo; public Test() { foo = new ArrayList(); foo.add("foo"); // Modification-1 } public static void main(String[] args) { Test t ..

AngularJS에서 데이터 바인딩의 작동 원리

질문 : AngularJS에서 데이터 바인딩은 어떻게 작동합니까? AngularJS 프레임 워크에서 데이터 바인딩은 어떻게 작동합니까? 나는 그들의 사이트 에서 기술적 세부 사항을 찾지 못했습니다. 데이터가 뷰에서 모델로 전파 될 때 작동 방식이 다소 명확합니다. 하지만 AngularJS는 setter와 getter없이 모델 속성의 변경 사항을 어떻게 추적합니까? 이 작업을 수행 할 수있는 JavaScript 감시자가 있다는 것을 알았습니다. 그러나 Internet Explorer 6 및 Internet Explorer 7 에서는 지원되지 않습니다. 그렇다면 AngularJS는 예를 들어 다음을 변경 하고이 변경 사항을 뷰에 반영했음을 어떻게 알 수 있습니까? myobject.myproperty="new..

Java에서 현재 stack trace를 얻는 방법

질문 : Java에서 현재 스택 추적을 어떻게 얻을 수 있습니까? Environment.StackTrace 를 수행하는 방법과 같이 Java에서 현재 스택 추적 을 얻는 방법은 무엇입니까? Thread.dumpStack() 찾았지만 원하는 것이 아닙니다. 스택 추적을 다시 가져오고 싶습니다. 답변 Thread.currentThread().getStackTrace() 사용할 수 있습니다. 이는 프로그램의 현재 스택 추적을 나타내는 StackTraceElement 배열을 반환합니다. 출처 : https://stackoverflow.com/questions/1069066/how-can-i-get-the-current-stack-trace-in-java

[오류]JsonMappingException : No suitable constructor found for type [simple type, class ]: can not instantiate from JSON object

질문 : JsonMappingException : [단순 유형, 클래스] 유형에 적합한 생성자가 없습니다. JSON 객체에서 인스턴스화 할 수 없습니다. JSON 요청을 받고 처리하려고 할 때 다음 오류가 발생합니다. org.codehaus.jackson.map.JsonMappingException : No suitable constructor found for type [simple type, class ]: can not instantiate from JSON object (유형 정보를 추가 / 활성화해야합니까?). 보내려는 JSON은 다음과 같습니다. { "applesDO" : [ { "apple" : "Green Apple" }, { "apple" : "Red Apple" } ] } Control..

Java 제네릭이 암시 적으로 다형성이 아닌 이유

질문 : 목록 List의 하위 클래스 ? Java 제네릭이 암시 적으로 다형성이 아닌 이유는 무엇입니까? Java 제네릭이 상속 / 다형성을 처리하는 방법에 대해 약간 혼란 스럽습니다. 다음 계층을 가정합니다. 동물 (부모) 개 - 고양이 (어린이) doSomething(List animals) 메서드가 있다고 가정합니다. 상속 및 다형성의 모든 규칙에 따라 List 가 List 이고 List 이 List 하므로 둘 중 하나를이 메서드에 전달할 수 있습니다. 별로. doSomething(List

자바 스크립트 배열을 선언 할 때 "Array ()"와 "[]"의 차이점

질문 : 자바 스크립트 배열을 선언 할 때 "Array ()"와 "[]"의 차이점은 무엇입니까? 다음과 같은 배열 선언의 실제 차이점은 무엇입니까? var myArray = new Array(); 과 var myArray = []; 답변 차이가 있지만 그 예에는 차이가 없습니다. 보다 자세한 방법 사용 : new Array() 는 매개 변수에 하나의 추가 옵션이 있습니다. 생성자에 숫자를 전달하면 해당 길이의 배열을 얻게됩니다. x = new Array(5); alert(x.length); // 5 배열을 만드는 다양한 방법을 설명하려면 : var a = [], // these are the same b = new Array(), // a and b are arrays with length 0 c = [..

Java에서 SoftReference와 WeakReference의 차이점

질문 : Java에서 SoftReference와 WeakReference의 차이점은 무엇입니까? java.lang.ref.WeakReference 와 java.lang.ref.SoftReference 의 차이점은 무엇입니까? 답변 약한 참조 이해 , Ethan Nicholas : 약한 참조 간단히 말해서 약한 참조 는 객체가 메모리에 남아 있도록 할만큼 충분히 강하지 않은 참조입니다. 약한 참조를 사용하면 가비지 수집기의 기능을 활용하여 도달 가능성을 결정할 수 있으므로 직접 수행 할 필요가 없습니다. 다음과 같이 약한 참조를 만듭니다. WeakReference weakWidget = new WeakReference(widget); 그런 다음 코드의 다른 곳에서 weakWidget.get() 을 사용하여..

728x90
반응형