editor php Yuzai memperkenalkan kepada anda topik artikel ini: Jawapan kepada soalan lazim dalam pengaturcaraan Java. Hari ini kita akan membincangkan salah satu masalah biasa dalam persekitaran pembangunan Intellij: tidak dapat menyelesaikan kaedah. Semasa pembangunan Java, menghadapi situasi di mana kaedah tidak dapat diselesaikan boleh menyebabkan sakit kepala, tetapi sebenarnya ia mungkin hanya masalah kecil. Seterusnya, kami akan memberikan anda analisis terperinci tentang kemungkinan punca masalah ini dan menyediakan penyelesaian untuk membantu anda memprogramkan dengan lebih lancar.
Cuba untuk mengetahui sebab saya mendapat ralat "setobservationcode tidak pernah digunakan" dalam kaedah kedua. Coretan kedua menunjukkan tempat ujian unit digunakan. Dengan ujian unit ia memberi saya "Tidak dapat menyelesaikan kaedah 'setobservationcode' dalam ralat 'resourcehandler'. Saya melihat sesetengah orang mengatakan mereka menyelesaikan ralat dengan membatalkan cache dan memulakan semula tetapi itu tidak berfungsi untuk saya.
public class ResourceHandlerTest extends TestCase { FhirContext ctx = null; IParser parser = null; // Other methods... public String getId(Resource resource) { if (resource.getIdElement() != null) { // Use IdType to extract the ID without additional details such as base URL or resource type. IdType idType = resource.getIdElement(); return idType.getIdPart(); } else { // Handle the case where the resource does not have an ID. return null; // Or throw an exception, depending on your requirements. } } public Observation setObservationCode(Observation observation, Coding coding) { if (observation.getCode() == null) { observation.setCode(new CodeableConcept().addCoding(coding)); } else { observation.getCode().addCoding(coding); } return observation; } public Observation setObservationCode(Observation observation, Coding coding) { if (observation.getCode() == null) { observation.setCode(new CodeableConcept().addCoding(coding)); } else { observation.getCode().addCoding(coding); } return observation; } public Observation setObservationCode(Observation observation, String system, String code, String display) { System.out.println("Debug: Observation Before - " + observation); System.out.println("Debug: System - " + system); System.out.println("Debug: Code - " + code); System.out.println("Debug: Display - " + display); Coding coding = new Coding().setSystem(system).setCode(code).setDisplay(display); return setObservationCode(observation, coding); } ----------------------------------------------------------------------------------------------- public void testSetObservationCode() throws Exception { if (ctx == null) ctx = FhirContext.forR4(); if (parser == null) parser = ctx.newJsonParser(); String observationJsonFile = "src/resources/observation.json"; String observationJson = ""; try { observationJson = new String(Files.readAllBytes(Paths.get(observationJsonFile))); } catch (Exception e) { System.err.println("Failed to read observation.json file."); } Observation correctObservation = parser.parseResource(Observation.class, observationJson); ResourceHandler studentResourceHandler = new ResourceHandler(); String expectedSystem = "http://example.com/system"; String expectedCode = "12345"; String expectedDisplay = "Test Code"; Coding coding = new Coding().setSystem(expectedSystem).setCode(expectedCode).setDisplay(expectedDisplay); Observation modifiedObservation = studentResourceHandler.setObservationCode(correctObservation, coding); assertEquals(expectedSystem, modifiedObservation.getCode().getCodingFirstRep().getSystem()); assertEquals(expectedCode, modifiedObservation.getCode().getCodingFirstRep().getCode()); assertEquals(expectedDisplay, modifiedObservation.getCode().getCodingFirstRep().getDisplay()); }
Anda memanggil kaedah pertama dalam ujian anda, tetapi bukan kaedah kedua.
Barisan terakhir dalam ujian, baris 4, mempunyai 2 parameter, ini adalah parameter pertama. Oleh itu intellij tidak dapat mengesan penggunaan yang kedua.
Observation modifiedObservation = studentResourceHandler.setObservationCode(correctObservation, coding);
Lihat struktur blok kod utama, sebaiknya anda memanggil definisi kedua (dengan 4 parameter) yang memanggil definisi lain.
Atas ialah kandungan terperinci Tidak dapat menyelesaikan kaedah - Intellij. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!