Fragen, die jeder gute Java / Java EE Entwickler beantworten sollte?
Ich war durch Fragen, die jede gute .Net-Entwickler sollte in der Lage sein zu beantworten und war sehr beeindruckt mit dem Inhalt und Konzept dieser Frage, und so in dem gleichen Geist, ich Frage diese Frage für Java - /Java-EE-Entwickler.
Was Fragen denkst du, sollte eine gute Java/Java EE Programmierer in der Lage sein zu beantworten?
Ich bin die Kennzeichnung dieser Frage als community-wiki, wie es ist nicht benutzerspezifisch und soll es dienen, Programmierung Gemeinschaft.
Freuen uns auf einige erstaunliche Antworten.
BEARBEITEN: Bitte beantworten Sie die Fragen auch, wie vorgeschlagen, in den Kommentaren, so dass Menschen lernen können, etwas neues in Bezug auf die Sprache auch.
InformationsquelleAutor der Frage |
Du musst angemeldet sein, um einen Kommentar abzugeben.
Was ist die Beziehung zwischen hashCode() und equals()? Was ist die Bedeutung dieser Methoden? Was sind die Voraussetzungen für die Umsetzung?
InformationsquelleAutor der Antwort
Was ist der Unterschied zwischen Set -, Map-und List?
Ich bin immer noch erstaunt, wie viele Leute nicht wissen, diese in einem Telefon-interview.
InformationsquelleAutor der Antwort
Meisten Menschen mit "Nein" beantworten, weil Sie wissen, dass java nicht die mehrfache Vererbung. Aber ein interface kann immer noch verlängern mehrere Schnittstellen (aber eine Klasse erweitern können nicht mehrere Klassen). Dies führt zwar nicht zu der Diamant-problem.
Wenn die Antwort "Nein" ist, der interviewer sollte sich Fragen: "warum würde es verboten werden?". Dann denken Sie es, und Sie sollten erkennen, dass es kein problem ist.
So haben Sie gelernt, etwas (von sich selbst) in dem interview, und Sie zeigten die interviewer, dass Sie in der Lage sind, auf Grund über Klassen, Objekte, Vererbung, Polymorphismus, usw. Es ist eigentlich viel besser als ein Kandidat, der weiß die Antwort auswendig, aber nicht verstehen, warum
InformationsquelleAutor der Antwort
Gebrauch von Finale Schlüsselwort-Methode aufruft.
Zum Beispiel warum die Methode test im folgenden code nicht kompilieren Fehler trotz Verwendung von Finale qualifier für die parameter der Methode.
InformationsquelleAutor der Antwort
Sicher ist der Vergleich von string. Unterschied zwischen
InformationsquelleAutor der Antwort
Trick Frage: Welche Parameter werden per Referenz übergeben in Java?
Es ist erstaunlich, wie viele Menschen immer noch parrot den "primitiven Wert übergeben werden, Objekte werden by reference übergeben" - mantra.
InformationsquelleAutor der Antwort
Sie sagte "Gut","Entwickler". Hier sind meine 2 Cent zu.. 🙂
Für J2EE:
Kann ich denke, viele, viele, viele mehr von 'em, aber das hier jetzt tun 🙂
InformationsquelleAutor der Antwort
Was ist der Unterschied zwischen String -, StringBuffer-und StringBuilder?
InformationsquelleAutor der Antwort
"Was ist ein deployment-Deskriptor?"
Wenn der Kandidat schaudert involountarily, er hat Erfahrung in der Arbeit mit pre-3.0 EJBs.
InformationsquelleAutor der Antwort
Viele Fragen und interviews stehen zur Verfügung bei http://www.techinterviews.com/interview-questions/java und ich weiß nicht wirklich sehen, den Wert in kopieren und einfügen einer Auswahl von Ihnen.
Nein, es ist bis zu Ihnen die Erstellung Ihrer eigenen Zusammenstellung von Dingen Sie denken, sind wichtig. Persönlich gehe ich immer in zwei Schritten: zunächst ein paar Fragen um eine grundlegende Idee, die Erfahrung und die Fähigkeiten, dann ist das ein problem lösen, situation. Ich bin zwar nicht davon überzeugt, dass in der Lage zu beantworten alle bekannt Fragen macht Sie eine gute oder schlechte unbekannt Probleme solver. So, ich Frage lieber Menschen, die zur Lösung eines gegebenen Problems, um Ihnen einige Anforderungen, und bitten Sie Sie, um code zu schreiben (aber nicht auf dem Papier). Ich gebe Ihnen einige Zeit zu kommen zurück zu mir und prüfen Sie, wie Sie es geschafft haben, Ihre Codierung der Art, wie Sie das vorgeschlagen-APIs, etc.
Alle gesagt, meine Lieblings Frage ist "was magst du gar nicht über Java?" (in den Geist der diese eine). Es ist wirklich eine gute Frage, es gibt Ihnen ein sofortiges feedback darüber, wie viel ein Kandidat verwendet Java und erkundet seine API-und wenn er nur religiöse oder nicht (wie der OP schrieb).
Update: Wie vorgeschlagen von CPerkins, eine bessere Formulierung für die Frage, die oben vorgeschlagen werden könnte "Was würden Sie am Liebsten verändert sehen in Java?". Und in der Tat, bevorzuge ich diesen Weg.
InformationsquelleAutor der Antwort
Was ist 'System','', 'println' im System.aus.println ?
Was passiert, wenn Sie rufen 'Sie' auf HashMap ?
InformationsquelleAutor der Antwort
InformationsquelleAutor der Antwort
InformationsquelleAutor der Antwort
Wenn Sie die Einstellung Absolventen mit Java "Erfahrung" eine einfache Frage wie code Schreiben, wird eine NullPointerException geworfen werden unterscheiden kann, welche der Kandidaten verwendet habe Java kürzlich, und nicht nur zu stoppen, wenn Sie fertig Ihr Gerät/natürlich.
InformationsquelleAutor der Antwort
Was wird gedruckt?
Antwort: CoolReturn+1
Ein bisschen schwieriger:
Antwort: CoolReturn
InformationsquelleAutor der Antwort
Was ist der Unterschied zwischen einer abstrakten Klasse und einem interface? Als würden Sie jeden von Ihnen?
Viele Java Entwickler wissen das nicht, ich fragte die meisten Leute in meinem informatik-Kurs an der Universität, und die große Mehrheit könnte es nicht beantworten.
InformationsquelleAutor der Antwort
Einfache Fragen wie,
Obwohl diese sind sehr einfach, viele Entwickler nicht wissen, die Antworten. Ich schlage vor, diese werden gebeten, vor der code-bezogene Abfragen.
InformationsquelleAutor der Antwort
Top 5 J2EE/JEE-Fragen
Die Liste von J2EE/JEE-middleware Fragen, die ich gestellt haben, ist außergewöhnlich lang, aber hier sind die top 5, die mir gestellt wurden, und führte zu guten Diskussionen:
Diese Frage führt in der Regel zu verschiedenen interessanten Diskussionen über nicht verarbeitbare Nachrichten, Fehler-Warteschlangen, etc.,
Diese Frage in der Regel mir erlaubt zu besprechen in Bezug auf, wenn zu verwenden, langlebig-Abonnenten, die bei der Verwendung von Warteschlangen, etc.,
Dies führt zu wunderbaren Diskussionen über lazy loading, rehydratisieren, etc., Es hat sogar dazu führen, vergleichen und gegenüberstellen mit JPA-Entity-beans. Ich fand es nützlich, vorbereitet zu sein und klar zu sein in Konzepte.
Jede Lösung-von der einfachen web-server, basierend auf anspruchsvollen SOAP - /REST-Lösungen, und alle dazwischen, die sollte gut genug sein. Auch, basierend auf den interviewer, manchmal führt es zu sehr interessanten Diskussionen zu Themen wie einige design-Ideen - WSDL erste, doc-Stil, SOAP-Vermittler, etc., Es führen könnte, zu Fragen, wie auflisten der Verbesserungen, die in JAX-WS über JAX-RPC, oder SOAP1.2 über SOAP1.1, Antworten auf die in der Regel auf wie viel ich mich erinnere.
Diese Frage stellte in vielerlei Hinsicht, beginnend von Service Locator Muster zu
javax.naming.Context
Fragen.Andere knifflige Frage finde ich beunruhigend, aber haben konfrontiert, viele Male,
Wie werden die abhängigen libraries verpackt in ein Archiv?
oder Sichtbarkeit der verschiedenen Klassen in einem Archiv gebündelt.
Wenn die Diskussion nicht führen zu class loader Hierarchie der verschiedenen application-Servern, Ressourcen-Archive, etc., am besten ist es, aufzugeben und bewegen auf.
Top 5 der core-Java-Fragen:
Dies ist die Mutter aller Fragen. Einmal kann man effektiv land der interviewer in diesem Bereich, und wenn Sie bereit sind, den rest des Interviews in der Regel bleibt hier. Sicher sein, zu wissen
Set
,List
,Map
, und die Bedeutung derObject.equals()
undObject.hashCode()
in jeder Implementierung dieser Schnittstellen.Diese sind gut, wenn der interviewer hat einen offenen Geist. Wenn der interviewer bereits eine bestimmte Lösung im Auge, und Sie nicht mit seinem/Ihr, Sie werden so ziemlich zum scheitern verurteilt. Vereinbaren Sie am besten mit der Antwort "ich verstehe es, wenn andere Lösungen möglich sind. "
Ich habe festgestellt, es ist am besten vorbereitet zu sein, mit java.util.gleichzeitige Paket-Klassen. Doug Lea ' s Buch hat die meisten der Antworten.
Dies ist ein sure shot Frage, die viele Interviewer. So viel wie ich hasse das, es ist am besten vorbereitet zu sein. Zumindest die Erinnerung an ein paar, die ich gearbeitet haben, und führt die Diskussion in eine andere Richtung, weitgehend und effektiv hat Glück und das problem löst.
Immer wieder bin ich gebeten worden, darauf hinzuweisen, ein GoF-pattern in der Java API. Besser vorbereitet sein.
InformationsquelleAutor der Antwort
Unterschied zwischen web-server und einem web-container
InformationsquelleAutor der Antwort
Was magst du am meisten /am wenigsten über Java und warum?
InformationsquelleAutor der Antwort
warum sollte man die toString () - Methode?
InformationsquelleAutor der Antwort
Eine Reine Java-Frage:
Was ist der Unterschied zwischen schlafen und warten ? Nicht viele Menschen tatsächlich verstehen, wie Sie warten, arbeitet.
Tun, wie müssen Sie behandeln InterruptedExceptions ?
InformationsquelleAutor der Antwort
Dies ist die Frage, die ich konfrontiert, in meinem interview.
Warum ist die main-Methode in Java aufgerufen, die als public static void main(String[] args) ?
Antwort:
1.main() muss als public deklariertweil es durch die JVM aufgerufen, wenn das Programm die Ausführung beginnt.JVM doesnot gehören zu unserem Programm-Paket.
Durchzuführen, um Zugriff auf Haupt-außerhalb des Pakets haben wir es zu erklären, wie die öffentlichen.Wenn wir es erklären, als etwas anderes als die öffentlichkeit es zeigt eine Runtime Error aber nicht compile-Zeit-Fehler
2.main() muss als statisch deklariert denn wenn eine Methode als statisch deklariert ist, dann können wir rufen, dass die Methode außerhalb der Klasse mit ClassName.methodName();
Die JVM wird zunächst Laden Sie die Test-Klasse,und prüft, ob die Kommandozeilen-Argumente und ruft die main-Methode als Test.main();
3.main() deklariert werden muss, als void main ()weil die JVM ist nicht zu erwarten, dass jede-Wert von main().Es muss also erklärt werden als ungültig erklärt.
Wenn anderen return-Typ ist,den es ist ein Absturz mit Laufzeitfehler ich.e;NoSuchMethodFoundError.
4.main() muss die String-Argumenten als arraysweil die JVM ruft main-Methode durch die übergabe command line argument.Wie Sie sind gespeichert im string-array-Objekt, es wird als argument übergeben zu main().
InformationsquelleAutor der Antwort
Was ist der Unterschied zwischen J2SE und J2EE (oder JSE und JEE)?
Entwickler sollte in der Lage sein, darauf hinzuweisen, dass die enterprise-edition ist im Grunde eine definition der Schnittstelle (d.h. eine Spezifikation), die implementiert werden können, von den Anbietern. In der Erwägung, dass die standard-edition ist eine praktische Anwendung in seinem eigenen Recht
InformationsquelleAutor der Antwort
Wie funktioniert
volatile
beeinflussen code-Optimierung durch den compiler?InformationsquelleAutor der Antwort
Wie etwa was ist eine session-bean, und beschreiben Sie einige Unterschiede zwischen stateless und stateful session beans.
InformationsquelleAutor der Antwort
Schreiben Sie ein Programm zur Aufnahme von zwei Ganzzahlen und Ausgabe die größte von zwei zahlen in einer Datei an einem Speicherort Ihrer Wahl. Nun beschreiben, was jede Anweisung bewirkt.
Es ist möglich, Drilldown ziemlich tief ausgehend von der Bedeutung der import-Anweisung, bis zur ordnungsgemäßen Beendigung
InformationsquelleAutor der Antwort
Kern:
1. Was sind checked und unchecked exceptions ?
2. Beim hinzufügen einer neuen Ausnahme im code, welche Art (Aktiviert/Deaktiviert) zu verwenden, wenn ?
Servlet:
1. Was ist der Unterschied zwischen Antwort.sendRedirect() und request.forward() ?
InformationsquelleAutor der Antwort
Wie
threads
Arbeit? Was istsynchronized
? Wenn es zweisynchronized
Methoden in einer Klasse können Sie gleichzeitig ausgeführt, indem zwei threads. Sie werden überrascht sein, zu hören, Antworten viele Menschen ja. Dann alle thread-Frage im Zusammenhang, z.B. deadlockHunger etc.InformationsquelleAutor der Antwort
Eine Sache, die viele Java-Programmierer nicht wissen, ist, dass Strings unveränderlich sind, so verwenden StringBuilder oder StringBuffer!
InformationsquelleAutor der Antwort