คำถามติดแท็ก java

Java เป็นภาษาการเขียนโปรแกรมระดับสูงที่เป็นที่นิยม ใช้แท็กนี้เมื่อคุณมีปัญหาในการใช้หรือทำความเข้าใจภาษานั้น ๆ แท็กนี้ไม่ค่อยได้ใช้คนเดียวและมักใช้ร่วมกับ [สปริง], [สปริงบูต], [jakarta-ee], [android], [javafx], [gradle] และ [maven]

14
ความแตกต่างระหว่าง Java SE / EE / ME?
คำตอบของคำถามนี้เป็นความพยายามของชุมชน แก้ไขคำตอบที่มีอยู่เพื่อปรับปรุงโพสต์นี้ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ฉันควรติดตั้งอันไหนเมื่อฉันต้องการเริ่มเรียนรู้ Java? ฉันจะเริ่มด้วยพื้นฐานบางอย่างดังนั้นฉันจะเขียนโปรแกรมง่ายๆที่สร้างไฟล์ไดเรกทอรีแก้ไขไฟล์ XML และอื่น ๆ ตอนนี้ไม่มีอะไรซับซ้อนเกินไป ฉันเดาว่า Java SE (Standard Edition) เป็นสิ่งที่ฉันควรติดตั้งบนเดสก์ท็อป Windows 7 ของฉัน ฉันมี Komodo IDE อยู่แล้วซึ่งฉันจะใช้เพื่อเขียนโค้ด Java
326 java  jakarta-ee  java-me 

12
ทำไมการโทรถึง System.gc () จึงเป็นเรื่องไม่ถูกต้อง
หลังจากตอบคำถามเกี่ยวกับวิธีบังคับวัตถุฟรีใน Java (ชายคนนั้นกำลังล้าง HashMap 1.5GB) ด้วยSystem.gc()ฉันได้รับการบอกว่ามันเป็นวิธีปฏิบัติที่ไม่ถูกต้องในการโทรSystem.gc()ด้วยตนเอง แต่ความคิดเห็นนั้นไม่น่าเชื่อถืออย่างสิ้นเชิง นอกจากนี้ดูเหมือนว่าไม่มีใครกล้าที่จะลุกขึ้นสู้หรือถอนคำตอบของฉัน ฉันได้รับการบอกกล่าวว่ามีการปฏิบัติที่ไม่ดี แต่จากนั้นฉันก็บอกด้วยว่าการทำงานของตัวรวบรวมขยะไม่ได้หยุดโลกอย่างเป็นระบบอีกต่อไปและ JVM สามารถใช้งานได้อย่างมีประสิทธิภาพเพื่อเป็นเพียงคำใบ้เท่านั้น ที่สูญเสีย ฉันเข้าใจว่า JVM มักจะรู้ดีกว่าคุณเมื่อจำเป็นต้องเรียกคืนหน่วยความจำ ฉันยังเข้าใจด้วยว่าการกังวลเกี่ยวกับข้อมูลไม่กี่กิโลไบต์นั้นเป็นเรื่องโง่ ฉันยังเข้าใจว่าแม้กระทั่งเมกะไบต์ของข้อมูลก็ไม่ได้เป็นเช่นนั้นเมื่อสองสามปีก่อน แต่ถึงกระนั้น 1.5 กิกะไบต์ และคุณรู้ว่ามีข้อมูลประมาณ 1.5 GB ในหน่วยความจำ มันไม่เหมือนกับการถ่ายในที่มืด เป็นSystem.gc()ระบบที่ไม่ดีหรือมีบางจุดที่จะไม่เป็นไร? ดังนั้นคำถามคือสองเท่าจริง: เป็นเพราะเหตุใดหรือไม่ได้ปฏิบัติไม่ดีต่อการเรียกร้องSystem.gc()? จริง ๆ แล้วมันเป็นเพียงคำใบ้ของ JVM ภายใต้การนำไปใช้บางอย่างหรือเป็นวงจรการรวบรวมเต็มเสมอหรือไม่? มีการใช้งานตัวเก็บรวบรวมขยะที่สามารถทำงานได้โดยไม่หยุดโลกหรือไม่? กรุณาหลั่งน้ำตาแสงบางกว่ายืนยันต่าง ๆ คนได้ทำในการแสดงความคิดเห็นของฉันคำตอบ เกณฑ์อยู่ที่ไหน มันเป็นสิ่งที่ไม่เคยมีความคิดที่ดีที่จะโทรSystem.gc()หรือจะมีบางครั้งที่มันเป็นที่ยอมรับ? ถ้าเป็นเช่นนั้นเวลาเหล่านั้นคืออะไร?

16
การรันโค้ดในเธรดหลักจากเธรดอื่น
ในบริการ android ฉันได้สร้างเธรด (s) สำหรับการทำงานพื้นหลังบางอย่าง Runnableฉันมีสถานการณ์ที่หัวข้อที่ต้องการที่จะโพสต์งานบางอย่างในคิวข้อความหัวข้อหลักของตัวอย่างที่ มีวิธีรับHandlerเธรดหลักและโพสต์Message/ Runnableไปยังเธรดอื่นหรือไม่ ขอบคุณ

15
ฉันจะนำเข้า javax.servlet API ในโครงการ Eclipse ของฉันได้อย่างไร
ฉันต้องการพัฒนาด้วย Servlets ใน Eclipse แต่มันบอกว่าjavax.servletไม่สามารถแก้ไขแพ็คเกจได้ ฉันจะเพิ่มjavax.servletแพ็คเกจในโปรเจ็กต์ Eclipse ของฉันได้อย่างไร
326 java  eclipse  servlets 

6
ใช้ @JsonIgnore เฉพาะระหว่างการทำให้เป็นอนุกรม แต่ไม่ใช่การดีซีเรียลไลเซชัน
ฉันมีวัตถุผู้ใช้ที่ส่งไปยังและจากเซิร์ฟเวอร์ เมื่อฉันส่งวัตถุผู้ใช้ออกฉันไม่ต้องการส่งรหัสผ่านที่แฮชไปยังไคลเอนต์ ดังนั้นฉันเพิ่ม@JsonIgnoreในคุณสมบัติรหัสผ่าน แต่ยังป้องกันไม่ให้ถูกดีซีเรียลไลซ์ลงในรหัสผ่านซึ่งทำให้ยากต่อการลงทะเบียนผู้ใช้เมื่อพวกเขาไม่ได้รับรหัสผ่าน ฉัน@JsonIgnoreจะนำไปใช้กับการทำให้เป็นอนุกรมเท่านั้นและไม่ได้ทำการดีซีเรียลไลเซชัน? ฉันใช้ Spring JSONView ดังนั้นฉันจึงไม่สามารถควบคุมสิ่งObjectMapperต่างๆ สิ่งที่ฉันได้ลอง: เพิ่ม@JsonIgnoreไปยังคุณสมบัติ เพิ่ม@JsonIgnoreในวิธี getter เท่านั้น

7
C # Java HashMap เทียบเท่า
การมาจากโลกของ Java สู่ C # หนึ่งจะเทียบเท่า HashMap หรือไม่? ถ้าไม่ใช่คุณจะแนะนำอะไร
325 c#  java  hashmap 


14
เพื่อป้องกันการรั่วไหลของหน่วยความจำไดร์เวอร์ JDBC ไม่ได้ถูกบังคับให้ลงทะเบียน
ฉันได้รับข้อความนี้เมื่อฉันเรียกใช้เว็บแอปพลิเคชันของฉัน มันทำงานได้ดี แต่ฉันได้รับข้อความนี้ระหว่างปิดเครื่อง SEVERE: เว็บแอปพลิเคชันลงทะเบียนไดรเวอร์ JBDC [oracle.jdbc.driver.OracleDriver] แต่ไม่สามารถยกเลิกการลงทะเบียนเมื่อเว็บแอปพลิเคชันหยุดทำงาน เพื่อป้องกันการรั่วไหลของหน่วยความจำไดร์เวอร์ JDBC ไม่ได้ถูกบังคับให้ลงทะเบียน ความช่วยเหลือใด ๆ ชื่นชม
325 java  tomcat  jdbc 

9
เหตุใดจึงใช้ Gradle แทน Ant หรือ Maven [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องการอภิปรายการโต้แย้งการหยั่งเสียงหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ล็อคแล้ว คำถามและคำตอบนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ เครื่องมือบิลด์อื่นที่มีเป้าหมายเป็นจาวาคืออะไร หากคุณใช้ Gradle กับเครื่องมืออื่นทำไม

11
การตั้งชื่อส่วนต่อประสานใน Java [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องการอภิปรายการโต้แย้งการหยั่งเสียงหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา ภาษา OO ส่วนใหญ่นำหน้าชื่ออินเตอร์เฟสด้วยตัวพิมพ์ใหญ่ I ทำไม Java ไม่ทำเช่นนี้? อะไรคือเหตุผลที่ไม่ปฏิบัติตามอนุสัญญานี้ เพื่อแสดงให้เห็นถึงสิ่งที่ฉันหมายถึงถ้าฉันต้องการที่จะมีส่วนติดต่อผู้ใช้และการใช้งานของผู้ใช้ฉันมีสองตัวเลือกใน Java: Class = ผู้ใช้ส่วนต่อประสาน = UserInterface Class = UserImpl, Interface = ผู้ใช้ ที่ไหนในภาษาส่วนใหญ่: Class = ผู้ใช้ส่วนต่อประสาน = IUser ตอนนี้คุณอาจยืนยันว่าคุณสามารถเลือกชื่อที่สื่อความหมายได้มากที่สุดสำหรับการใช้งานของผู้ใช้และปัญหาจะหายไป แต่ Java ของการผลักดันวิธี POJO กับสิ่งต่าง ๆ และคอนเทนเนอร์ IOC ส่วนใหญ่ใช้ DynamicProxies อย่างกว้างขวาง สองสิ่งเหล่านี้เข้าด้วยกันหมายความว่าคุณจะมีอินเทอร์เฟซมากมายกับการใช้งาน POJO เดียว …

1
เมื่อใดจึงจะปลอดภัยในการใช้คลาสภายใน (ไม่ระบุชื่อ)
ผมได้อ่านบทความบางอย่างเกี่ยวกับการรั่วไหลของหน่วยความจำใน Android และดูวิดีโอที่น่าสนใจนี้จาก Google I / O ในเรื่อง แต่ฉันก็ยังไม่เข้าใจแนวคิดและโดยเฉพาะอย่างยิ่งเมื่อมันมีความปลอดภัยหรือเป็นอันตรายต่อผู้ใช้เรียนภายในภายในกิจกรรม นี่คือสิ่งที่ฉันเข้าใจ: หน่วยความจำรั่วจะเกิดขึ้นหากอินสแตนซ์ของคลาสภายในมีชีวิตอยู่นานกว่าคลาสภายนอก (กิจกรรม) -> สิ่งนี้สามารถเกิดขึ้นได้ในสถานการณ์ใด ในตัวอย่างนี้ฉันคิดว่าไม่มีความเสี่ยงต่อการรั่วไหลเนื่องจากไม่มีวิธีใดที่การขยายคลาสแบบไม่ระบุชื่อOnClickListenerจะใช้งานได้นานกว่ากิจกรรมใช่ไหม final Dialog dialog = new Dialog(this); dialog.setContentView(R.layout.dialog_generic); Button okButton = (Button) dialog.findViewById(R.id.dialog_button_ok); TextView titleTv = (TextView) dialog.findViewById(R.id.dialog_generic_title); // *** Handle button click okButton.setOnClickListener(new OnClickListener() { public void onClick(View v) { dialog.dismiss(); } }); titleTv.setText("dialog title"); …


9
classpath คืออะไรและฉันจะตั้งได้อย่างไร
ฉันแค่อ่านบรรทัดนี้: สิ่งแรกที่รูปแบบ () วิธีการคือโหลดเทมเพลต Velocity จาก classpath ที่ชื่อว่า output.vm โปรดอธิบายความหมายของ classpath ในบริบทนี้และฉันควรกำหนด classpath อย่างไร

9
จะถอดรหัส URL ใน Java ได้อย่างไร?
ใน Java ฉันต้องการแปลงสิ่งนี้: https%3A%2F%2Fmywebsite%2Fdocs%2Fenglish%2Fsite%2Fmybook.do%3Frequest_type สำหรับสิ่งนี้: https://mywebsite/docs/english/site/mybook.do&request_type นี่คือสิ่งที่ฉันมี: class StringUTF { public static void main(String[] args) { try{ String url = "https%3A%2F%2Fmywebsite%2Fdocs%2Fenglish%2Fsite%2Fmybook.do" + "%3Frequest_type%3D%26type%3Dprivate"; System.out.println(url+"Hello World!------->" + new String(url.getBytes("UTF-8"),"ASCII")); } catch(Exception E){ } } } แต่มันไม่ทำงาน สิ่งเหล่านี้%3Aและ%2Fรูปแบบที่เรียกว่าอะไรและฉันจะแปลงได้อย่างไร
323 java  url-encoding 

22
จะรับช่วงเวลาปัจจุบันในรูปแบบ ISO 8601 ด้วยวันที่ชั่วโมงและนาทีได้อย่างไร
วิธีที่ดีที่สุดในการรับการนำเสนอในรูปแบบISO 8601ของช่วงเวลาปัจจุบันคือ UTC คืออะไร? 2010-10-12T08:50Zมันควรมีลักษณะดังนี้: ตัวอย่าง: String iso8601 = DateFormat.getDateTimeInstance(DateFormat.ISO_8601).format(date);
323 java 

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