dex tệp là một tệp được thực thi trên máy ảo Dalvik.
Dalvik VM bao gồm một số tính năng để tối ưu hóa hiệu suất, xác minh và giám sát, một trong số đó là Dalvik Executable (DEX) .
Mã nguồn Java được trình biên dịch Java biên dịch thành .classcác tệp. Sau đó, dxcông cụ (dexer), một phần của SDK Android xử lý các .classtệp thành định dạng tệp có tên là DEXmã byte Dalvik. Công dxcụ loại bỏ tất cả các thông tin dư thừa có trong các lớp. Trong DEXtất cả các lớp của ứng dụng được đóng gói thành một tệp. Bảng sau đây cung cấp so sánh giữa các kích thước mã cho các tệp jar JVM và các tệp được xử lý bởi dexcông cụ.
Bảng so sánh kích thước mã cho thư viện hệ thống, ứng dụng trình duyệt web và ứng dụng cho mục đích chung (ứng dụng đồng hồ báo thức). Trong mọi trường hợp, công cụ dex giảm kích thước mã hơn 50%.

Trong các môi trường Java tiêu chuẩn, mỗi lớp trong mã Java dẫn đến một .classtệp. Điều đó có nghĩa là, nếu tệp mã nguồn Java có một lớp chung và hai lớp ẩn danh, giả sử để xử lý sự kiện, thì trình biên dịch java sẽ tạo tổng cộng ba .classtệp.
Bước biên dịch giống nhau trên nền tảng Android, do đó dẫn đến nhiều .classtệp. Nhưng sau khi .classcác tệp được tạo, công cụ của dx Cảnh được sử dụng để chuyển đổi tất cả .classcác tệp thành một tệp duy nhất .dex, hoặc Dalvik Executable ,. Đây là .dextệp được thực thi trên máy ảo Dalvik. Các .dextập tin đã được tối ưu hóa cho việc sử dụng bộ nhớ và thiết kế chủ yếu được điều khiển bằng cách chia sẻ dữ liệu.