반응형

Java 576

Java 동기화된 메서드 잠금 객체 또는 메서드?

Java 동기화된 메서드 잠금 객체 또는 메서드? 동일한 클래스에 동기화된 메서드가 2개 있지만 각 변수가 서로 다른 경우, 두 개의 스레드가 동시에 두 메서드에 액세스할 수 있는가?물체에 잠금이 발생하는가, 아니면 동기화된 방법 내부의 변수만큼 구체적인가? 예: class X { private int a; private int b; public synchronized void addA(){ a++; } public synchronized void addB(){ b++; } } 2개의 스레드가 클래스 X 수행의 동일한 인스턴스에 액세스할 수 있는지 여부x.addA() 및x.addB()동시에?메서드를 동기화된 것으로 선언하는 경우(입력하여 수행 중인 경우)public synchronized void add..

IT이야기 2022.05.03

대기() 호출 시 잘못된 MonitorStateException

대기() 호출 시 잘못된 MonitorStateException 나는 내 프로그램을 위해 자바에서 멀티스레딩을 사용하고 있다.스레드를 성공적으로 실행했지만 사용할 때는Thread.wait(), 그것은 던지고 있다.java.lang.IllegalMonitorStateException어떻게 하면 실이 통지될 때까지 기다리게 할 수 있을까?넌 지금 이 자리에 있어야 해synchronized을 위해 봉쇄하다.Object.wait()일하기 위해 또한, 나는 오래된 학교 실링 패키지 대신 동시성 패키지를 보는 것을 추천한다.그들은 더 안전하고 함께 일하기 더 쉽다. 편집 난 네가 의도한 거라고 생각했어.Object.wait()예외는 객체를 잠그지 않고 접근하려고 할 때 발생한다.wait에 정의되어 있음Object,..

IT이야기 2022.05.02

Java에서 일반 매개 변수 유형 가져오기(반영 포함)

Java에서 일반 매개 변수 유형 가져오기(반영 포함) 제네릭 파라미터의 타입을 얻을 수 있는가? 예: public final class Voodoo { public static void chill(List aListWithTypeSpiderMan) { // Here I'd like to get the Class-Object 'SpiderMan' Class typeOfTheList = ???; } public static void main(String... args) { chill(new ArrayList()); } } 한 건축물은, 내가 우연히 마주친 적이 있다. Class persistentClass = (Class) ((ParameterizedType)getClass().getGenericSuper..

IT이야기 2022.05.02

Eclipse에서 java.library.path를 설정하는 방법

Eclipse에서 java.library.path를 설정하는 방법 어떻게 설정하지?java.library.path이클립스 프로젝트 전체를 위해서? 라이브러리를 OS를 하는 것은 Java라고 한다..dll/ .so/ .jnilib그러나 응용 프로그램은 항상 라이브러리 경로에서 해당 파일을 찾을 수 없다는 오류 메시지와 함께 종료된다. 나는 도서관 경로를 사용하도록 이 프로젝트 전체를 구성하고 싶다.일식의 일부 실행 구성에 VM 인수로 경로를 추가하려고 했지만 작동하지 않았다.도서관 길을 건들지 마!이클립스가 직접 만들었어! 대신 프로젝트의 라이브러리 설정으로 이동하여 기본 라이브러리가 필요한 각 jar/etc에 대해 라이브러리 탭에서 확장하십시오.트리 뷰에서 각 라이브러리에는 소스/자바독 및 네이티브 라이..

IT이야기 2022.05.02

Java ResultSet에서 null int 값을 확인하는 중

Java ResultSet에서 null int 값을 확인하는 중 Java에서 나는 null 값을 테스트하려고 하고 있는데, 이 열에서 원시 int 유형으로 캐스트되고 있는 ResultSet에서 입니다. int iVal; ResultSet rs = magicallyAppearingStmt.executeQuery(query); if (rs.next()) { if (rs.getObject("ID_PARENT") != null && !rs.wasNull()) { iVal = rs.getInt("ID_PARENT"); } } 위의 코드 파편을 보면, 이것을 하는 더 좋은 방법이 있는가, 나는 2차 wasNull() 테스트가 중복된다고 가정한다. 우리를 교육하고,기본값:ResultSet.getInt필드 값이 다음과..

IT이야기 2022.05.01

메이븐이 JDK 1.6을 사용하는 이유 그러나 내 자바버전은 1.7이다.

메이븐이 JDK 1.6을 사용하는 이유 그러나 내 자바버전은 1.7이다. 나는 수염을 깎는 것도 처음이고, MacOS도 처음이야. 터미널에서 설정을 마쳤으며 버전 설정을 가져올 때(사용)mvn -v)는 JDK 1.6을 사용하는 것 같고, 나는 JDK 1.7을 설치한 것 같아.무슨 문제라도 있니? 입력하는 명령은 다음과 같다. blues:helloworld Ninja$ java -version java version "1.7.0_05" Java(TM) SE Runtime Environment (build 1.7.0_05-b06) Java HotSpot(TM) 64-Bit Server VM (build 23.1-b03, mixed mode)` blues:helloworld Ninja$ mvn -v Apach..

IT이야기 2022.04.29

테스트하기 위해 비공개 방법을 공개하는 것... 좋은 생각인가?

테스트하기 위해 비공개 방법을 공개하는 것... 좋은 생각인가? 의장 참고:여기에 이미 39개의 답변이 올라와 있다(일부는 삭제됐다).답변을 게시하기 전에 토론에 의미 있는 내용을 추가할 수 있는지 여부를 고려하십시오.너는 다른 사람이 이미 한 말을 그저 반복하고 있을 것 같다. 나는 가끔 그것을 위한 단위 시험을 작성하기 위해서 수업 시간에 공개적인 방법을 만들어야 하는 나를 발견한다. 보통 이것은 그 방법이 학급 내의 다른 방법들 사이에 공유된 논리를 포함하고 있고 스스로 그 논리를 테스트하는 것이 더 깔끔하기 때문이거나, 또는 스레딩 문제를 걱정하지 않고 동기식 스레드에 사용되는 논리를 테스트하고 싶기 때문에 또 다른 이유가 가능할 수 있다. 다른 사람들은 이런 일을 하는 것을 싫어하기 때문에 스스..

IT이야기 2022.04.29

Java에서 int가 null일 수 있는가?

Java에서 int가 null일 수 있는가? 캔앤int있다null자바에서? 예를 들면 다음과 같다. int data = check(Node root); if ( data == null ) { // do something } else { // do something } 나의 목표는 a를 반환하는 함수를 쓰는 것이다.int라고 말했다.int노드의 높이에 저장되어 있는데 노드가 없으면 null이 되는데, 내가 그걸 확인해야겠어. 숙제로 하고 있지만 이 부분은 숙제의 일부가 아니라 내가 하고 있는 일을 잘 헤쳐나가도록 도와준다. 코멘트에 감사하지만, 실제로 코드 아래에 있는 것을 읽은 사람은 거의 없는 것 같다. 나는 어떻게 하면 이 목표를 달성할 수 있는지 묻고 있었다. 그것은 효과가 없다는 것을 쉽게 알아낼..

IT이야기 2022.04.29

개체의 클래스를 결정하는 방법

개체의 클래스를 결정하는 방법 if classB학급의C수업을 연장하다A그리고 나는 타입의 물건을 가지고 있다.B또는C인스턴스 유형을 어떻게 결정할 수 있는가?if (obj instanceof C) { //your code } 객체의 런타임 유형을 반환한다.여러 정답이 제시되었지만 여전히 더 많은 방법이 있다.Class.isAssignableFrom()그리고 단순히 물체를 던지려고 시도한다.ClassCastException). 가능한 요약 방법 가능한 테스트 방법을 요약해 봅시다.obj유형이다.C: // Method #1 if (obj instanceof C) ; // Method #2 if (C.class.isInstance(obj)) ; // Method #3 if (C.class.isAssignabl..

IT이야기 2022.04.29

Android에서 지연된 후 메소드를 호출하는 방법

Android에서 지연된 후 메소드를 호출하는 방법 나는 지정된 지연 후에 다음 방법으로 전화할 수 있기를 원한다.객관적인 c에서는 다음과 같은 것이 있었다. [self performSelector:@selector(DoSomething) withObject:nil afterDelay:5]; 자바를 가진 안드로이드에 이 방법과 동등한 것이 있는가?예를 들어 나는 5초 후에 메소드를 호출할 수 있어야 해. public void DoSomething() { //do something here } 코틀린 Handler(Looper.getMainLooper()).postDelayed({ //Do something after 100ms }, 100) 자바 final Handler handler = new Hand..

IT이야기 2022.04.28
반응형