Trang Chủ Xã hội Truyền thông Phát triển ứng dụng Android: Các lớp Java Phải Đầy đủ (và Phải) núm vú

Phát triển ứng dụng Android: Các lớp Java Phải Đầy đủ (và Phải) núm vú

Mục lục:

Video: Hướng Dẫn Lập Trình Web Theo Mô Hình MVC & OOP 2025

Video: Hướng Dẫn Lập Trình Web Theo Mô Hình MVC & OOP 2025
Anonim

Nếu một lớp Java không bị hỏng, đừng sửa nó. Giả sử bạn muốn thêm chức năng vào một lớp Java hiện có. Bạn thích lớp Hoạt động của Android, nhưng lớp Hoạt động được tuyên bố trước hiển thị không có gì trên màn hình. Bạn có viết lại lớp Hoạt động của Android không? Không.

Thay vì viết lại một lớp hiện có, bạn mở rộng lớp. Ngay cả trong ứng dụng "Hello" Android không có gì, bạn viết

lớp MyActivity công khai mở rộng Activity

Sau đó, trong khai báo lớp MyActivity, bạn viết

@Xoá bỏ void onCreate công cộng (Bundle savedInstanceState) {super. onCreate (savedInstanceState); setContentView (R. layout. main);}

Lớp MyActivity của bạn tạo ra các chức năng mới bằng cách mở rộng hầu hết các chức năng Hoạt động của Android trong khi vẫn làm phương pháp OnCreate chết trên não của lớp Activity.

Các lớp cuối cùng của Java

Trong lập trình hướng đối tượng, việc mở rộng một lớp học là điều quý giá nhất mà bạn có thể làm.

Tuy nhiên, một số lớp học không được mở rộng. Lấy ví dụ, lớp String của Java. Chuỗi là một Chuỗi là một Chuỗi. Bạn không muốn MyString của ai đó. chiều dài để trả lại khoảng thời gian cần thiết để tranh giành các ký tự của một chuỗi. Để ngăn không cho ai đó làm bất cứ điều gì không mong muốn, bất thường hoặc không bình thường với các phương pháp của chuỗi, người sáng tạo của Java đã làm cho lớp String cuối cùng:

public class cuối cùng Chuỗi

Một số lớp học đã tuyên bố của Android cũng là cuối cùng, Các lớp học Điện thoại và MediaStore.

Giống như lớp cuối cùng ghét được mở rộng,

lớp trừu tượng nhấn mạnh vào việc được mở rộng. ViewGroup của Android là một ví dụ về một lớp trừu tượng. public

abstract class ViewGroup {public void bringChildToFront (Xem con) {int index = indexOfChild (con); if (index => 0) {removeFromArray (index); addInArray (con, mChildrenCount); đứa trẻ. mParent = this;}} protected abstract void onLayout (thay đổi boolean, int l, int t, int r, int b);} ViewGroup của Android. tập tin java là hơn 3, 700 dòng dài. Vì vậy ví dụ này chỉ có một phần rất nhỏ trong mã của tệp. Nhưng bạn có thể thấy một lớp trở nên trừu tượng như thế nào. Không ai ngạc nhiên, từ abstract trước từ lớp. Nhưng từ abstract cũng bắt đầu khai báo một số phương pháp thuộc lớp.

Người sáng lập Android đã quyết định rằng ý tưởng về một ViewGroup rất hữu ích. Chúng là chính xác bởi vì bố cục Android yêu thích của bạn (LinearLayout, RelativeLayout, v.v.) là các lớp con của ViewGroup.Họ cũng hiểu rằng từ một loại ViewGroup sang một loại khác, một số chức năng không thay đổi. Ví dụ, ví dụ trên xác định một phương thức bringChildToFront, và các lớp con của ViewGroup kế thừa phương thức này.

Nhưng những người sáng lập cũng nhận ra rằng một số khía cạnh của một ViewGroup không có ý nghĩa trừ khi bạn làm việc với một nhóm cụ thể. Ví dụ: LinearLayout đặt những thứ này một cái khác, và RelativeLayout đặt mọi thứ ở trên, bên dưới và bên cạnh nhau. Vì vậy, mã trên không có phương pháp onLayout đầy đủ.

Khai báo onLayout không có cơ thể phương pháp. Nhưng Android yêu cầu mỗi lớp con của lớp ViewGroup để khai báo phương thức onLayout của chính nó. Java thi hành yêu cầu này khi bạn tuyên bố phương pháp onLayout được trừu tượng.

Là một nhà phát triển, bạn không thể tạo ra một đối tượng từ một lớp trừu tượng. Nếu bạn viết

ViewGroup group = new ViewGroup ();

Java nói với bạn rằng bạn đang cư xử không tốt. Để làm điều gì đó hữu ích với lớp ViewGroup, bạn cần một phân lớp của lớp ViewGroup. Lớp con có một phiên bản cụ thể của mỗi phương thức trừu tượng trong lớp ViewGroup:

gói com. allmycode. mẫu; nhập khẩu android Nội dung. Bối cảnh; nhập khẩu android lượt xem. ViewGroup; class public MyLayout

mở rộng ViewGroup {public MyLayout (Context context) {super (context);} @Chuyển bảo vệ void onLayout (thay đổi boolean, int l, int t, int r, int b);}} 

Phát triển ứng dụng Android: Các lớp Java Phải Đầy đủ (và Phải) núm vú

Lựa chọn của người biên tập

Làm thế nào để Thiết lập nhân viên trong QuickBooks Quá trình biên chế nâng cao - núm vú

Làm thế nào để Thiết lập nhân viên trong QuickBooks Quá trình biên chế nâng cao - núm vú

Sau khi bạn thành lập công ty của bạn thông tin cho bảng lương trong QuickBooks, bạn đã sẵn sàng để thiết lập nhân viên cho biên chế. Là một phần của quy trình Thiết lập biên chế nâng cao, QuickBooks hiển thị trang web nơi bạn có thể thêm nhân viên của mình. Bạn cũng có thể thêm nhân viên bằng cách hiển thị Trung tâm Nhân viên. (Chọn lệnh Employee → Employee Center và nhấp chuột ...

Làm thế nào để Thiết lập biểu đồ Tài khoản QuickBooks 2012 - núm vú

Làm thế nào để Thiết lập biểu đồ Tài khoản QuickBooks 2012 - núm vú

Biểu đồ tài khoản Danh sách trong QuickBooks 2012 là danh sách các tài khoản bạn sử dụng để phân loại thu nhập, chi phí, tài sản, nợ phải trả và số vốn chủ sở hữu của chủ sở hữu. Nếu bạn muốn xem chi tiết đơn hàng cụ thể của dữ liệu tài chính trên báo cáo, bạn cần một tài khoản cho chi tiết đơn hàng đó. Nếu bạn muốn ngân sách ...

Cách Thiết lập Máy in để in QuickBooks 2015 Hóa đơn - núm vú

Cách Thiết lập Máy in để in QuickBooks 2015 Hóa đơn - núm vú

Nếu bạn dự định in hóa đơn từ QuickBooks 2015, bạn chỉ cần cài đặt máy in hóa đơn một lần, nhưng bạn cần phải chỉ rõ một số quy tắc in ấn chung về hoá đơn. Các quy tắc này cũng áp dụng cho các bản ghi nhớ tín dụng và các đơn đặt hàng, bằng cách này. Để cài đặt máy in của bạn để in hóa đơn, làm theo các bước sau: Chọn ...

Lựa chọn của người biên tập

Hình ảnh Các chế độ phát trên một Canon EOS 70D - núm vú

Hình ảnh Các chế độ phát trên một Canon EOS 70D - núm vú

Một trong những điều tốt nhất về Canon EOS 70D của bạn có thể xem ảnh ngay sau khi bạn chụp chúng. Không còn đoán xem bạn có bị bắn mà bạn muốn hay cần thử lại; không còn lãng phí tiền bạc khi phát triển và in những bức ảnh bốc mùi. Để chuyển máy ảnh sang chế độ Phát lại, chỉ cần ...

Lựa chọn của người biên tập

Cách xem tab Thông báo của bạn trên Twitter - những con cần

Cách xem tab Thông báo của bạn trên Twitter - những con cần

Xem ai đang tương tác với bạn trên Twitter trực tiếp qua @replies và @mentions (Tweets để đáp ứng hoặc nói chung đề cập đến người dùng cá nhân), các mục yêu thích (cách thừa nhận hoặc đánh dấu trang Tweets) và retweets (chia sẻ nội dung đã được đăng bởi một người dùng Twitter khác). Yêu thích Nhấn vào biểu tượng ngôi sao, hoặc nút Video yêu thích, thêm vào Tweet của bạn ...

Sai lầm Twitter # 1: @reply versus @mention - núm vú

Sai lầm Twitter # 1: @reply versus @mention - núm vú

Mọi người dùng Twitter - mới và cũ - đã trở thành nạn nhân của sự nhầm lẫn giữa @reply versus @mention. Khi nhà phát triển thịnh vượng và nhà chiến lược nội dung Anum Hussein giới thiệu 21 mẹo đăng bài xã hội trên hội nghị INBOUND hàng năm, mẹo để hiểu sự khác biệt giữa @reply và @mention là số một ...

Mẹo vặt để xây dựng sự hiện diện của cá nhân trên Twitter

Mẹo vặt để xây dựng sự hiện diện của cá nhân trên Twitter

Twitter ban đầu phổ biến để giúp các cá nhân giữ liên lạc với bạn bè và người quen của họ qua các cập nhật nhỏ. Nhiều Twitterers cá nhân vẫn có xu hướng sử dụng Twitter theo cách này, cập nhật một vòng tròn gần gũi của bạn bè về những suy nghĩ và những sự kiện xảy ra trong cuộc sống của họ. Theo thời gian, bạn có thể theo kịp với những người mà bạn có thể không liên hệ ...