2011-09-23 37 views
71

Tôi liên tục tự hỏi làm thế nào phiên bản Java được sử dụng cho phát triển Android liên quan đến một phiên bản Java SE. Ví dụ, tôi đã đọc ngày hôm nay về "Loại suy luận và phương pháp chung" là một tính năng được thêm vào trong Java SE 7. Tôi tự hỏi bản thân mình, "Tôi có thể sử dụng điều này trong mã Android?"Phiên bản Java của Android có liên quan như thế nào với phiên bản Java SE?

Tất nhiên tôi có thể nhập mã vào một dự án Android và xem liệu nó có biên dịch hay không, nhưng tôi sẽ hạnh phúc hơn khi có một số ánh xạ trong đầu.

Tôi đã cố gắng tìm kiếm thông tin này trên Googling, kiểm tra tài liệu Android, v.v. nhưng không thể tìm thấy câu trả lời.

Chỉnh sửa: Tôi quan tâm nhiều hơn đến các tính năng ngôn ngữ, ví dụ: Phiên bản cú pháp Java của Android liên quan đến cú pháp Java SE như thế nào.

+0

Tương tự và có liên quan (nhưng ngày): http://stackoverflow.com/q/390482/324625 –

+12

Bạn có phải là luật sư của Oracle không? Nếu vậy tôi có quyền giữ im lặng :) –

+0

Đây là câu trả lời hay nhất http://stackoverflow.com/questions/4867334/which-edition-of-java-is-being-used-in-android-j2me-or-java -se –

Trả lời

41

Phiên bản Android không liên quan trực tiếp đến Java SE, mặc dù nó sử dụng một tập hợp con các thư viện SE 6 của Apache Harmony và các công cụ. Nhóm Android sẽ quyết định xem liệu & có hỗ trợ/yêu cầu phiên bản Harmony 7 SE không.

Chỉnh sửa Dường như KitKat Android hỗ trợ các tính năng ngôn ngữ Java SE 7. Xem các bình luận bên dưới.

+9

Vì vậy, sẽ an toàn khi nói rằng cú pháp Android tương đương với Java SE 6? (Tôi hiểu các thư viện khá khác nhau) – jfritz42

+4

Vâng, sẽ an toàn khi nói điều đó. Nếu chúng chuyển sang khả năng tương thích Java SE 7 (nghĩa là các số nhị phân, chuỗi trong các câu lệnh chuyển đổi, v.v.) thì tôi chắc chắn rằng nó sẽ được công bố công khai. – pents90

+2

FYI Apache đã quyết định [nghỉ hưu] (http://en.wikipedia.org/wiki/Apache_Harmony) dự án Harmony vào tháng 11. Vậy có vẻ như chúng tôi có thể chưa từng thấy SE7 trở lên? –

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