2011-07-09 26 views
8

Gần đây tôi đã bắt đầu lập trình trong Java SE và tôi nhận thấy từ nhiều bài viết và nghe tin đồn rằng các ứng dụng Android được phát triển bằng Java hoặc bằng ngôn ngữ tương tự Java.Có bất kỳ sự khác biệt nào giữa Java và Java của Oracle được sử dụng trong Android không?

Tôi cũng nhận thấy rằng có các gói khác để sử dụng, bởi vì chúng tôi phải phát triển cho thiết bị di động. Cho đến gần đây, tôi chưa bao giờ quan tâm đến thiết bị di động và các ứng dụng, như hệ điều hành Android, nhưng bây giờ tôi hiểu rằng đây là tương lai, và là một cơ hội tuyệt vời của một công việc.

Câu hỏi của tôi là: nếu trong tương lai gần, tôi muốn phát triển một thứ gì đó trong Android, tôi có phải học một ngôn ngữ Java khác với ngôn ngữ lập trình bây giờ không?

Có nhiều khác biệt, theo lập trình, giữa ngôn ngữ Java và Java được sử dụng trong Android không?

Cảm ơn.

Trả lời

7

Không có sự khác biệt giữa Java và Java của Oracle. Nó được gọi là Oracle Java vì Oracle sở hữu Java. Bạn có thể phát triển ứng dụng Android bằng cách sử dụng Core Java.

Nếu bạn biết Core Java thì bạn chỉ cần tìm hiểu Android SDK để phát triển các ứng dụng Android.

Tham khảo trang web này để tìm hiểu Android: Android Developer Site.

+0

Cảm ơn bạn đã trả lời. Có, tôi biết Java đã được phát triển bởi Sun, và bây giờ thuộc sở hữu của Oracle, không có khác biệt;) Không bao giờ nghe thấy tên "Core Java", có thể là http://www.velocityreviews.com/forums/t124719-what-is- core-java.html phải không? –

+1

Core Java phải làm với gói cơ bản của các đối tượng Java thường được sử dụng cho các ứng dụng máy tính để bàn chung Đọc thêm: http://wiki.answers.com/Q/What_is_difference_between_core_Java_and_advanced_Java#ixzz1RbbXYNB0 –

+0

Cảm ơn bạn. Tôi hiểu rõ hơn về những gì mà Java cốt lõi có được với liên kết này. ;) –

7

Các ứng dụng Android được viết (hầu hết các lần) trong Java. Đây là một java thuần túy với các thư viện bổ sung, trừ đi một số thư viện UI (chẳng hạn như swing). Nó thậm chí còn biên dịch thành các tệp lớp và sau đó chuyển đổi thành các tệp .dex có thể thực thi cho máy ảo Dalvik.

Nếu bạn đã biết Java, bạn sẽ cần phải tìm hiểu cách sử dụng SDK Android và hệ điều hành, không phải là ngôn ngữ lập trình mới.

Xem một số vấn đề cơ bản tại Android developer site

+0

Cảm ơn câu trả lời của bạn. ;) VM Dalvik, tôi nghĩ, là tương đương với JVM, phải không? Cảm ơn các liên kết. –

+0

Có. Máy ảo Dalvik là máy ảo của Android, nên được tối ưu hóa cho các thiết bị Android. – MByD

2

Sự thiếu sót của nhiều thư viện lớp cơ sở (ví dụ như các thư viện trong vùng tên javax) có nghĩa là khi ngôn ngữ giống nhau, nhiều thư viện được viết bằng Java sẽ không hoạt động.

+0

Tôi đã hiểu. Giống như người dùng MByD trả lời, đây là java thuần túy trừ đi một số thư viện lớp cơ sở, như swing, đó là trong không gian tên javax, còn được gọi là Advanded Java. Cảm ơn bạn! ;) –

+0

Tại sao không chỉ bao gồm javax trong ứng dụng của bạn? – izzy

Các vấn đề liên quan