รายการคำเตือน @SuppressWarnings ที่ถูกต้องใน Java คืออะไร


264

รายการชื่อ@SuppressWarningsคำเตือนที่ถูกต้องใน Java คืออะไร?

บิตที่มาในระหว่างใน("")@SuppressWarnings("")


3
คำถามนี้ดีมากและคำตอบนั้นมีประโยชน์ หากใครบางคนจาก JCP มองดูคุณควรตระหนักว่ามันยุ่งแค่ไหนที่จะเพิ่มคำเตือนการปราบปราม ไม่มีการประชุมในกรณี, ยัติภังค์, กรณีอูฐเป็นเพียงระเบียบธรรมดามันจะน่ารักที่จะสร้างมาตรฐานนี้
Snicolas

ฉันเห็น"ProhibitedExceptionDeclared"ภายใน Eclipse Collections Framework ( org.eclipse.collections.impl.block.function.checked.ThrowingFunction) และไม่อยู่ในรายการด้านล่าง
kevinarpe

คำตอบ:


250

มันขึ้นอยู่กับ IDE หรือคอมไพเลอร์ของคุณ

นี่คือรายการสำหรับ Eclipse Galileo:

  • ทั้งหมดเพื่อยับยั้งการเตือนทั้งหมด
  • Boxingเพื่อหยุดการเตือนที่เกี่ยวข้องกับการใช้งาน Boxing / Unbox
  • castเพื่อยับยั้งการเตือนที่เกี่ยวข้องกับการดำเนินการ cast
  • dep-annเพื่อยับยั้งการเตือนที่เกี่ยวข้องกับการเพิ่มความคิดเห็นที่เลิกใช้แล้ว
  • คัดค้านเพื่อยับยั้งการเตือนที่เกี่ยวข้องกับการคัดค้าน
  • ข้อผิดพลาดในการปราบปรามการเตือนที่เกี่ยวข้องกับการหยุดพักที่ขาดหายไปในงบสวิตช์
  • ในที่สุดก็เพื่อระงับคำเตือนที่เกี่ยวข้องกับการบล็อกที่ไม่ส่งคืน
  • การซ่อนเพื่อยับยั้งการเตือนที่เกี่ยวข้องกับไอเดียที่ซ่อนตัวแปร
  • สลับที่ไม่สมบูรณ์เพื่อระงับการเตือนที่เกี่ยวข้องกับรายการที่หายไปในคำสั่งสลับ (กรณี enum)
  • nlsเพื่อยับยั้งการเตือนที่เกี่ยวข้องกับตัวอักษรสตริงที่ไม่ใช่ nls
  • nullเพื่อยับยั้งการเตือนที่เกี่ยวข้องกับการวิเคราะห์ null
  • ข้อ จำกัดในการระงับการเตือนที่เกี่ยวข้องกับการใช้งานของการอ้างอิงที่ท้อแท้หรือต้องห้าม
  • ซีเรียลเพื่อยับยั้งการเตือนที่เกี่ยวข้องกับฟิลด์ serialVersionUID ที่หายไปสำหรับคลาสที่สามารถทำให้เป็นอนุกรมได้
  • การเข้าถึงแบบสแตติกเพื่อยับยั้งการเตือนที่เกี่ยวข้องกับการเข้าถึงแบบสแตติกที่ไม่ถูกต้อง
  • Synthetic-accessเพื่อยับยั้งการเตือนที่เกี่ยวข้องกับการเข้าถึงที่ไม่เพิ่มประสิทธิภาพจากคลาสภายใน
  • ไม่ถูกตรวจสอบเพื่อระงับการเตือนที่เกี่ยวข้องกับการดำเนินการที่ไม่ถูกตรวจสอบ
  • unqualified-field-accessเพื่อยับยั้งการเตือนที่เกี่ยวข้องกับการเข้าถึงฟิลด์อย่างไม่มีเงื่อนไข
  • ไม่ได้ใช้เพื่อยับยั้งการเตือนที่เกี่ยวข้องกับรหัสที่ไม่ได้ใช้

รายการสำหรับ Indigo เพิ่ม:

  • javadocเพื่อยับยั้งการเตือนที่เกี่ยวข้องกับการเตือน javadoc
  • rawtypesเพื่อยับยั้งการเตือนที่เกี่ยวข้องกับการใช้งานประเภท raw
  • static-methodเพื่อยับยั้งการเตือนที่เกี่ยวข้องกับวิธีการที่สามารถประกาศว่าเป็นแบบคงที่
  • superเพื่อยับยั้งการเตือนที่เกี่ยวข้องกับการแทนที่เมธอดโดยไม่มีการเรียกใช้ขั้นสูง

รายการสำหรับ Juno เพิ่ม:

  • แหล่งข้อมูลเพื่อระงับการเตือนที่เกี่ยวข้องกับการใช้ทรัพยากรประเภทปิดได้
  • sync-overrideเพื่อยับยั้งการเตือนเนื่องจากไม่มีการซิงโครไนซ์เมื่อแทนที่วิธีการซิงโครไนซ์

เคปเลอร์และลูน่าใช้รายการโทเค็นเช่นเดียวกับจูโน ( รายการ )

คนอื่นจะคล้ายกัน แต่แตกต่างกัน


ในกรณีใดบ้างที่จะระงับการเตือนแบบ null จะมีประโยชน์
Jesse Jashinsky

@Jesse: เมื่อคอมไพเลอร์ผิด (เช่นคำเตือน "'Stupid Flanders'") ลองรวบรวม: void foo( Object o ) { boolean b; if ( ( b = o == null ) ) o = new Object(); o.toString(); }. สภาพแวดล้อมบางอย่าง (เช่น NetBeans 7.3 w / Java 6 JDK [1.6.0_41]) จะสร้างขึ้น"o possibly null"เมื่อมีการo.toString()โทรถึงแม้ว่าoจะไม่เป็นโมฆะในตอนนั้นก็ตาม
ตราไว้เมื่อ

2
@cletus: เป็นไปได้หรือไม่ที่จะเพิ่มประเภทคำเตือนใน eclipse? ปัญหาคือสมาชิกคนหนึ่งในทีมของเราใช้ IntelliJ และ IDE นั้นมีประเภทการเตือนอื่น ๆ ที่ให้คำเตือนใน Eclipse :) ใน Eclipse Indigo คุณสามารถตั้งค่าในการตั้งค่า: ละเว้นโทเค็น SuppressWarnings ที่ไม่ได้ใช้ แต่ดูเหมือนจะไม่ทำงาน ...
KC

semicolonดูเหมือนจะไม่ทำงานใน luna? :( คนที่สามารถตรวจสอบว่าsemicolonถูกต้องแน่นอน?
Kissaki

การระงับคำเตือน "การซิงโครไนซ์ในฟิลด์ที่ไม่ใช่ครั้งสุดท้าย" มีค่าเท่าใด
matteo

48

อนุญาตให้ใช้ค่าทั้งหมดได้ (ค่าที่ไม่รู้จักจะถูกละเว้น) รายการของคนที่ได้รับการยอมรับนั้นเป็นคอมไพเลอร์โดยเฉพาะ

ในJava Tutorials uncheckedและdeprecationแสดงรายการเป็นคำเตือนสองข้อที่กำหนดโดยข้อกำหนดภาษา Java ดังนั้นจึงควรใช้กับคอมไพเลอร์ทั้งหมด:

ทุกคำเตือนของคอมไพเลอร์อยู่ในหมวดหมู่ ข้อกำหนดภาษา Java แสดงรายการสองหมวดหมู่: การคัดค้านและไม่เลือก

ส่วนเฉพาะภายในJava Language Specificationที่กำหนดไว้ไม่สอดคล้องกันในทุกเวอร์ชัน ในข้อมูลจำเพาะ Java SE 8 uncheckedและdeprecationแสดงรายการเป็นคำเตือนคอมไพเลอร์ในส่วน9.6.4.5 @SuppressWarningsและ9.6.4.6 @ เลิกใช้แล้วตามลำดับ

สำหรับคอมไพเลอร์ของ Sun การรันjavac -Xจะแสดงรายการของค่าทั้งหมดที่รู้จักโดยเวอร์ชันนั้น สำหรับ 1.5.0_17 รายการดูเหมือนจะเป็น:

  • ทั้งหมด
  • การคัดค้าน
  • ไม่ถูกตรวจสอบ
  • เจ๊ง
  • เส้นทาง
  • อนุกรม
  • ในที่สุด

43

รายการเป็นคอมไพเลอร์เฉพาะ แต่นี่คือค่าที่รองรับในEclipse :

  • การ คัดค้านallDeprecationแม้ในรหัสที่เลิกใช้แล้ว
  • allJavadoc ไม่ถูกต้องหรือหายไป javadoc
  • การ เกิดขึ้นของassertIdentifierของ assert ที่ใช้เป็นตัวระบุ
  • การแปลง มวยอัตโนมัติ
  • charConcat เมื่อมีการใช้อาร์เรย์ถ่านในการต่อสตริงโดยไม่ต้องแปลงเป็นสตริงอย่างชัดเจน
  • conditionAssign การกำหนดบูลีนที่เป็นไปได้โดยไม่ตั้งใจ
  • วิธีการconstructorName ที่มีชื่อตัวสร้าง
  • dep-ann หายไป @Deprecated คำอธิบายประกอบ
  • การใช้ งานที่เลิกประเภทหรือสมาชิกนอกรหัสคัดค้าน
  • การ ใช้งานประเภทที่ไม่สอดคล้องกับกฎการเข้าถึงที่ท้อใจ
  • emptyBlock บล็อกว่างเปล่าที่ไม่มีเอกสาร
  • enumSwitch , ไม่สมบูรณ์-Switch สวิทช์ enum ไม่สมบูรณ์
  • การตกหล่นกรณีที่ เป็นไปได้ผ่าน
  • fieldHiding ฟิลด์ซ่อนตัวแปรอื่น
  • พารามิเตอร์ประเภทfinalBound ที่มีขอบเขตสุดท้าย
  • ในที่สุด ก็ปิดกั้นไม่ได้ตามปกติในที่สุด
  • ห้าม ใช้ประเภทที่ตรงกับกฎการเข้าถึงที่ต้องห้าม
  • การซ่อน มาโครสำหรับ fieldHiding, localHiding, typeHiding และ maskedCatchBlock
  • ทางอ้อมทาง อ้อมอ้างอิงทางอ้อมไปยังสมาชิกคงที่
  • ชนิดคำอธิบายประกอบintfAnnotationใช้เป็นซุปเปอร์อินเตอร์เฟส
  • intfNonInherited อินเตอร์เฟซที่ไม่ได้รับการถ่ายทอดวิธีการทำงานร่วมกัน
  • javadoc javadoc ไม่ถูกต้อง
  • localHiding ตัวแปรท้องถิ่นซ่อนตัวแปรอื่น
  • maskedCatchBlocks บล็อค catch ที่ซ่อนอยู่
  • NLS ตัวอักษรที่ไม่ NLS สตริง (ขาดของแท็ก // $ NON-NLS-)
  • noEffectAssign การ มอบหมายโดยไม่มีผลกระทบ
  • เป็นโมฆะ อาจหายไปหรือตรวจสอบโมฆะซ้ำซ้อน
  • nullDereference ไม่มีการตรวจสอบ null
  • การเพิ่มความคิดเห็นแบบ over-ann ที่ @Override หายไป
  • paramAssign การ กำหนดให้กับพารามิเตอร์
  • pkgDefaultMethod พยายามที่จะแทนที่วิธีการเริ่มต้นแพคเกจ
  • การใช้งานดิบ a ชนิด raw (แทนประเภท parametrized)
  • เครื่องหมายอัฒภาค ไม่จำเป็นเครื่องหมายอัฒภาคหรือว่างเปล่า
  • อนุกรม serialVersionUID ที่ขาดหายไป
  • specialParamHiding คอนสตรัคหรือพารามิเตอร์หมาหลบซ่อนตัวอยู่อีกสนาม
  • มาโครการเข้าถึงแบบคงที่สำหรับทางอ้อมStaticและ staticReceiver
  • staticReceiver หากไม่ได้ใช้ตัวรับคงที่เพื่อรับสนามคงที่หรือเรียกวิธีการคงที่
  • super overriding เมธอดโดยไม่ต้องใช้คำสั่ง super
  • ปราบปราม เปิดใช้งาน @SuppressWarnings
  • SyntheticAccess, Synthetic-access เมื่อดำเนินการเข้าถึงแบบ Synthetic สำหรับ Innerclass
  • งาน เปิดใช้งานการสนับสนุนแท็กงานในซอร์สโค้ด
  • พารามิเตอร์typeHidingซ่อนชนิดอื่น
  • ไม่ จำกัด การดำเนินการประเภทไม่ได้ตรวจสอบ
  • ไม่ จำเป็นปล่อยข้อที่ไม่จำเป็นอื่น ๆ
  • unqualified-field-access, unqualifiedField ไม่มีการอ้างอิงถึงฟิลด์อย่างไม่มีเงื่อนไข
  • แมโครที่ไม่ได้ใช้สำหรับ unusedArgument, unusedImport, unusedLabel, unusedLocal, unusedPrivate และ unusedThrown
  • อาร์กิวเมนต์วิธีที่ไม่ได้ใช้ unusedArgument
  • unusedImport การอ้างอิงการนำเข้าที่ไม่ได้ใช้
  • unusedLabel ป้ายกำกับที่ไม่ได้ใช้
  • unusedLocal ตัวแปรท้องถิ่นที่ไม่ได้ใช้
  • unusedPrivate ที่ไม่ได้ใช้ประกาศสมาชิกส่วนตัว
  • unusedThrown ข้อยกเว้นที่ไม่ได้ประกาศที่ไม่ได้ใช้ประกาศ
  • uselessTypeCheck การดำเนินการ cast / instanceof ที่ไม่จำเป็น
  • อาร์กิวเมนต์varargsCast varargs ต้องการการส่งที่ชัดเจน
  • warningToken unhandled เตือน token ใน @SuppressWarnings

Sun JDK (1.6) มีรายการเตือนที่สั้นลงที่รองรับ:

  • การเลิกใช้ ตรวจสอบการใช้งานของรายการคิดค่าเสื่อมราคา
  • ไม่ถูกตรวจสอบ ให้รายละเอียดเพิ่มเติมสำหรับคำเตือนการแปลงที่ไม่ได้ตรวจสอบซึ่งได้รับคำสั่งจากข้อกำหนดภาษา Java
  • อนุกรมเตือนเกี่ยวกับการหายไปคำจำกัดความ serialVersionUID ในชั้นเรียน serializable
  • ในที่สุดก็เตือนเกี่ยวกับข้อสุดท้ายที่ไม่สามารถทำได้ตามปกติ
  • ข้อผิดพลาดตรวจสอบบล็อกสวิตช์สำหรับกรณีที่ล้มเหลวและให้ข้อความเตือนสำหรับสิ่งที่พบ
  • path ตรวจสอบพา ธที่ไม่มีอยู่ในพา ธ ของสภาพแวดล้อม (เช่น classpath)

javac ล่าสุดที่พร้อมใช้งาน (1.6.0_13) สำหรับ mac มีคำเตือนที่สนับสนุนดังต่อไปนี้

  • ทั้งหมด
  • หล่อ
  • การคัดค้าน
  • divzero
  • ว่างเปล่า
  • ไม่ถูกตรวจสอบ
  • เจ๊ง
  • เส้นทาง
  • อนุกรม
  • ในที่สุด
  • แทนที่

รายการ Eclipse ที่นี่มีลักษณะเป็นคอมไพเลอร์แฟล็กและไม่ใช่หมายเหตุประกอบ SuppressWarning (ตรวจสอบส่วนสุดท้ายของเอกสารที่คุณเชื่อมโยง)
Ron Tuffin

3
พวกเขาทั้งสอง. โดยการตั้งค่าสถานะคอมไพเลอร์คุณบอกคอมไพเลอร์ชนิดของคำเตือนที่คุณต้องการ ด้วยคำอธิบายประกอบคุณสามารถระงับคำเตือนเหล่านี้ในบางสถานที่ในรหัสของคุณ
D. Wroblewski

ฉันคิดว่ารายการนั้นสั้นกว่าสำหรับ Eclipse ดูเอกสารกาลิเลโอล่าสุดรายการโทเค็นที่มีอยู่สำหรับ SupressWarnings ชัดเจน: help.eclipse.org/galileo/index.jsp?topic=/…
Peter Štibraný

2
ฉันลอง @SuppressWarnings ("raw") ใน Eclipse 3.5 และไม่ทำงาน - ฉันได้รับคำเตือนว่า "raw" ไม่ใช่ค่าที่ถูกต้องสำหรับคำอธิบายประกอบนี้
Jesper

ฉันด้วย. น่าเสียดายที่การสนับสนุน jsp ไม่ได้ถูกล้างออกเหมือนที่รองรับจาวา
stu

9

รายการโปรดใหม่สำหรับฉันอยู่@SuppressWarnings("WeakerAccess")ใน IntelliJ ซึ่งป้องกันไม่ให้บ่นเมื่อมันคิดว่าคุณควรมีตัวปรับการเข้าถึงที่อ่อนแอกว่าที่คุณใช้ เราต้องมีการเข้าถึงสาธารณะสำหรับวิธีการบางอย่างเพื่อสนับสนุนการทดสอบและ@VisibleForTestingหมายเหตุประกอบไม่ได้ป้องกันการเตือน

ETA: "Anonymous" แสดงความคิดเห็นในหน้า @MattCampbell ที่เชื่อมโยงกับบันทึกที่มีประโยชน์ต่อไปนี้อย่างไม่น่าเชื่อ:

คุณไม่จำเป็นต้องใช้รายการนี้เพื่อวัตถุประสงค์ที่คุณกำลังอธิบาย IntelliJ จะเพิ่ม SuppressWarnings เหล่านั้นให้คุณโดยอัตโนมัติหากคุณถาม มันสามารถทำสิ่งนี้ได้หลายครั้งตามที่ฉันจำได้

เพียงไปที่ตำแหน่งที่คุณมีคำเตือนและพิมพ์ Alt-Enter (หรือเลือกในรายการการตรวจสอบถ้าคุณเห็นมัน) เมื่อเมนูปรากฏขึ้นแสดงคำเตือนและเสนอให้แก้ไขให้คุณ (เช่นหากคำเตือนคือ "วิธีการอาจคงที่" จากนั้น "ทำให้คงที่" เป็นข้อเสนอของ IntellJ เพื่อแก้ไขให้คุณ) แทนที่จะเลือก "ป้อน" เพียงใช้ปุ่มลูกศรขวาเพื่อเข้าถึงเมนูย่อยซึ่งจะมีตัวเลือกเช่น "แก้ไขการตั้งค่าโปรไฟล์การตรวจสอบ" และอื่น ๆ ที่ด้านล่างของรายการนี้จะมีตัวเลือกเช่น "ระงับการตรวจสอบทั้งหมดสำหรับชั้นเรียน" "ระงับชั้นเรียน" "ระงับวิธีการ" และบางครั้ง "ระงับคำสั่ง" คุณอาจต้องการให้รายการใดรายการหนึ่งปรากฏในรายการสุดท้าย การเลือกข้อใดข้อหนึ่งต่อไปนี้จะเพิ่มคำอธิบายประกอบ @SuppressWarnings (หรือแสดงความคิดเห็นในบางกรณี) ให้กับรหัสของคุณเพื่อยับยั้งคำเตือนที่เป็นปัญหา คุณไม่จำเป็นต้องเดาว่าจะเพิ่มหมายเหตุใดเพราะ IntelliJ จะเลือกตามคำเตือนที่คุณเลือก


2

ฉันสังเกตเห็นว่า//noinspectionสามารถสร้างขึ้นโดยอัตโนมัติในIntelliJ

  • ตรวจสอบให้แน่ใจว่าคุณยังไม่ได้วางแผน@SuppressWarninigsก่อนแถลง
  • ตอนนี้คุณสามารถสร้างเฉพาะอัตโนมัติได้//noinspectionโดยกดปุ่มAlt + Enterเมื่อคุณเลือกคำเตือนแล้วใช้ปุ่มลูกศรขวาเพื่อดูตัวเลือกSuppress for ...

จบลงที่นี่เมื่อฉันต้องการที่จะระงับคำเตือน "สวิตช์มีป้ายกำกับกรณีและปัญหาน้อยเกินไป" จาก IntelliJ ฉันไม่พบรายชื่อที่สมบูรณ์สำหรับ@SuppressWarningการสนับสนุนของ IntelliJ แต่//noinspectionทำเคล็ดลับสำหรับฉัน


คุณสามารถเพิ่ม @SuppressWarnings ("SwitchStatementWithTooFewBranches") สำหรับสิ่งนั้นได้เช่นกัน
JPM

น่าเสียดายที่ตัวเลือกSupress สำหรับ ...เมื่อคลิก ALT + ENTER ไม่สามารถใช้งานได้ตลอดเวลา
flawyte

//noinspection SwitchStatementWithTooFewBranchesก่อนที่จะswitchทำงานเช่นกันสำหรับฉัน
Oliver Hausler

1

และนี่เป็นรายการที่สมบูรณ์มากขึ้นซึ่งฉันพบคำเตือนเฉพาะสำหรับ Android-Studio ที่ฉันไม่สามารถหาที่อื่นได้ (เช่น SynchronizeOnNonFinalField)

https://jazzy.id.au/2008/10/30/list_of_suppresswarnings_arguments.html

โอ้ตอนนี้แนวทางของ SO ขัดแย้งกับข้อ จำกัด ของ SO ในอีกด้านหนึ่งฉันควรจะคัดลอกรายการแทนที่จะให้เฉพาะลิงก์ แต่ในทางกลับกันสิ่งนี้จะเกินจำนวนอักขระสูงสุดที่อนุญาต ดังนั้นเราแค่หวังว่าลิงก์จะไม่หยุด


1

JSL 1.7

เอกสารของ Oracleกล่าวถึง:

  • unchecked: คำเตือนที่ไม่ได้ตรวจสอบถูกระบุโดยสตริง "ไม่ถูกตรวจสอบ"
  • deprecation: คอมไพเลอร์ Java ต้องสร้างคำเตือนการคัดค้านเมื่อชนิดวิธีการฟิลด์หรือตัวสร้างที่มีการประกาศคำอธิบายประกอบด้วยคำอธิบายประกอบ @Deprecated ใช้ (เช่นแทนที่เรียกใช้หรืออ้างอิงโดยชื่อ) ยกเว้น: [... ] ใช้อยู่ภายในเอนทิตีที่ถูกเพิ่มความคิดเห็นเพื่อยับยั้งการเตือนด้วยหมายเหตุประกอบ @SuppressWarnings ("การคัดค้าน"); หรือ

จากนั้นจะอธิบายว่าการใช้งานสามารถเพิ่มและจัดทำเอกสารของตนเองได้:

ผู้จำหน่ายคอมไพเลอร์ควรจัดทำเอกสารชื่อคำเตือนที่สนับสนุนร่วมกับประเภทคำอธิบายประกอบนี้ ผู้ขายควรได้รับการสนับสนุนให้ร่วมมือเพื่อให้แน่ใจว่าชื่อเดียวกันนั้นใช้ได้กับคอมไพเลอร์หลายตัว


1
ไม่เป็นความจริงที่uncheckedมีเพียงคนเดียวที่รับรองโดยมาตรฐาน ส่วนถัดไปจากส่วนที่คุณยกมาบอกว่าไม่ควรสร้างคำเตือนการเลิกใช้เมื่อ "การใช้อยู่ภายในเอนทิตีที่มีการเพิ่มความคิดเห็นเพื่อระงับการเตือนด้วยคำอธิบายประกอบ@SuppressWarnings("deprecation")"
kbolino

1

ฉันต้องการเพิ่มว่ามีรายการหลักของพารามิเตอร์การปราบปราม IntelliJ ที่: https://gist.github.com/vegaasen/157fbc6dce8545b7f12c

มันดูค่อนข้างครอบคลุม บางส่วน:

Warning Description - Warning Name

"Magic character" MagicCharacter 
"Magic number" MagicNumber 
'Comparator.compare()' method does not use parameter ComparatorMethodParameterNotUsed 
'Connection.prepare*()' call with non-constant string JDBCPrepareStatementWithNonConstantString 
'Iterator.hasNext()' which calls 'next()' IteratorHasNextCallsIteratorNext 
'Iterator.next()' which can't throw 'NoSuchElementException' IteratorNextCanNotThrowNoSuchElementException 
'Statement.execute()' call with non-constant string JDBCExecuteWithNonConstantString 
'String.equals("")' StringEqualsEmptyString 
'StringBuffer' may be 'StringBuilder' (JDK 5.0 only) StringBufferMayBeStringBuilder 
'StringBuffer.toString()' in concatenation StringBufferToStringInConcatenation 
'assert' statement AssertStatement 
'assertEquals()' between objects of inconvertible types AssertEqualsBetweenInconvertibleTypes 
'await()' not in loop AwaitNotInLoop 
'await()' without corresponding 'signal()' AwaitWithoutCorrespondingSignal 
'break' statement BreakStatement 
'break' statement with label BreakStatementWithLabel 
'catch' generic class CatchGenericClass 
'clone()' does not call 'super.clone()' CloneDoesntCallSuperClone

1

หากคุณใช้ SonarLint ให้ลองใช้วิธีหรือคลาสของสายอักขระปลาหมึกทั้งหมด: @SuppressWarnings ("squid: S1172")

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.