JavaRush /Blog Java /Random-VI /Công cụ sửa đổi hoặc cách sử dụng bùa mê trong thế giới J...
Petr Gorskin
Mức độ
Москва

Công cụ sửa đổi hoặc cách sử dụng bùa mê trong thế giới Java

Xuất bản trong nhóm
Chúc một ngày thiên hà tốt lành, các đồng chí! Đây là bản thảo liên hành tinh đầu tiên của tôi và vì tôi là một kỹ sư nên việc diễn giải một số khái niệm có thể được thực hiện bằng ngôn ngữ ngoài Trái đất.
Công cụ sửa đổi hoặc cách sử dụng bùa chú trong thế giới Java - 1
Giới thiệu Theo tôi, Java giống như một hành lang vô tận có những cánh cửa (gói). Đằng sau mỗi cánh cửa này có không gian trống và một tủ hồ sơ, trong đó lưu trữ một núi cuộn giấy phép thuật với hướng dẫn (lớp) để tạo đồ vật. Mỗi cuộn mô tả một tập hợp các đặc điểm (biến) và khả năng (phương thức) - hành động (trường) được thực hiện trên chính lớp đó hoặc một đối tượng được lắp ráp trên cơ sở của nó. Ở giai đoạn này, hãy tưởng tượng mình là phù thủy và cố gắng tạo ra một hướng dẫn (lớp học) hoàn toàn mới. Vì vậy: Công cụ sửa đổi hoặc cách sử dụng bùa chú trong thế giới Java - 2Hãy uống thuốc tiên trí tuệ (tìm hiểu những điều cơ bản) và bắt đầu viết hướng dẫn. Công cụ sửa đổi quyền truy cập và không truy cập Hãy tưởng tượng rằng bất kỳ hướng dẫn và đối tượng nào được tạo trên cơ sở của nó, cũng như các đặc điểm và khả năng của nó, ban đầu sẽ bị mê hoặc một cách kỳ diệu, tức là. họ sẽ được chỉ định các bộ sửa đổi cụ thể. Hãy thử tạo một hướng dẫn về các loại bùa có thể có.
  1. Công cụ sửa đổi truy cập , mô tả khả năng truy cập của một lớp, đối tượng hoặc trường, là bắt buộc: khi không có nó, JVM (đây là một nguồn ma thuật phổ quát) sẽ tự động gán một mã định danh mặc định cho package.

    Bắt đầu từ công cụ sửa đổi thứ hai, có các công cụ sửa đổi không truy cập, không bắt buộc và cũng có thể xung đột với nhau (nhưng điều đầu tiên phải làm trước).

  2. Công cụ sửa đổi tĩnh cho biết lớp, đối tượng hoặc trường là tĩnh. Nhưng nó có nghĩa gì? Về cơ bản chúng tôi sẽ thử nó trên thực địa.

    Các biến tĩnh được gọi là biến lớp và là duy nhất cho tất cả các phiên bản của lớp đó. Các phương thức tĩnh có thể được gọi mà không cần tạo đối tượng mà chúng được khai báo. Các lớp tĩnh được sử dụng khi lồng lớp này vào lớp khác và nguyên tắc tương tác giữa lớp bên trong và lớp bên ngoài cũng tương tự như các phương thức (đây là chủ đề sẽ được thảo luận riêng). Cũng có thể được sử dụng như một khối riêng biệt trong một đối tượng.

  3. Công cụ sửa đổi Final chỉ ra một cách hiệu quả cho một biến rằng đó là một hằng số. Đối với các phương thức - chúng không thể bị ghi đè trong quá trình kế thừa, nhưng đối với các lớp thì đây là dấu hiệu cho thấy nó không thể được kế thừa từ nó (không thay đổi).

    Các công cụ sửa đổi tĩnh và cuối cùng áp dụng cho các lớp, đối tượng và trường. Tuy nhiên, có những công cụ sửa đổi chỉ áp dụng cho một số trong số chúng (hoặc thậm chí một phần trong số chúng, vì cả biến và phương thức đều là một trường, nhưng không phải tất cả các công cụ sửa đổi đều áp dụng cho cả hai). Nếu chúng ta rút ra một phép tương tự, chỉ có ủng và găng tay mới có thể được phù phép để tăng tốc độ (để chúng di chuyển nhanh hơn), nhưng phù phép một chiếc mũ cho tốc độ là vô nghĩa (và Hội đồng Giám sát Toàn cầu (trình biên dịch) sẽ không cho phép điều đó).

  4. Công cụ sửa đổi Tóm tắt chỉ áp dụng cho các phương thức và lớp . Một phương thức trừu tượng là một phương thức không có phần triển khai (nội dung).

    Nếu một lớp được đánh dấu là trừu tượng thì nó sẽ chứa các phương thức trừu tượng hoặc được thực hiện để ngăn chặn việc tạo các thể hiện của lớp đó. Nếu chúng ta vẽ một phép tương tự, ở giữa hướng dẫn, bạn có thể thấy tiêu đề “Tô màu một đồ vật”, sau đó không có mô tả nào. Những thứ kia. bằng cách sử dụng hướng dẫn này, bạn có thể tạo một đối tượng và bạn cũng có thể tô màu nó, nhưng hướng dẫn cụ thể này không cho biết cách thực hiện (viết hướng dẫn của riêng bạn để tạo một đối tượng màu đỏ dựa trên đối tượng này và mô tả cách tô màu nó).

Khi làm việc trong môi trường đa luồng, có thể sử dụng các công cụ sửa đổi đặc biệt:
  1. Công cụ sửa đổi Đồng bộ hóa chỉ được sử dụng cho các phương thức. Sự hiện diện của nó cho thấy rằng tại một thời điểm chỉ có một luồng có thể thực thi nó. Cũng có thể được sử dụng như một khối mã riêng biệt trong một đối tượng (chỉ định đối tượng đồng bộ hóa).

  2. Công cụ sửa đổi dễ bay hơi - chỉ dành cho các biến . Nên sử dụng cho các biến có thể được sử dụng đồng thời bởi nhiều luồng. Một biến có công cụ sửa đổi như vậy sẽ được sao chép ngay lập tức từ bộ đệm của bộ xử lý sang bộ nhớ chính mỗi khi nó thay đổi, cho phép các luồng song song nhận được giá trị gần đây nhất.

    Điều đáng chú ý là tính dễ bay hơi có thể áp dụng trong trường hợp chỉ một luồng có thể ghi vào một biến và phần còn lại chỉ có thể đọc từ biến đó. Đối với các trường hợp khác, tốt hơn là thêm công cụ sửa đổi được đồng bộ hóa vào các phương thức ghi vào biến dễ bay hơi.

  3. Công cụ sửa đổi tạm thời - chỉ dành cho các biến . Công cụ sửa đổi này đánh dấu các biến cần được bỏ qua khi sắp xếp thứ tự một đối tượng (đây là một quy trình thông minh mà về nguyên tắc, bạn có thể tự đọc về nó...)*

    * - Tôi viết bài này ở cấp độ 17 và cho đến lúc đó việc xê-ri hóa như một quy trình vẫn chưa được mô tả, vì vậy thay vì sao chép-dán, tôi khuyên bạn nên tự nghiên cứu nếu cần thiết.

Các cặp công cụ sửa đổi xung đột Ngoài khả năng áp dụng các công cụ sửa đổi cho các lớp, đối tượng và trường khác nhau, còn có khái niệm về các cặp xung đột. Giả sử rằng việc phù phép một chiếc mũ bảo hiểm bằng sức mạnh khiến nó trở nên nặng nề, đồng thời bạn muốn phù phép nó trở nên nhẹ nhàng. Một cái không phù hợp với cái kia.
  1. Cuối cùng và Dễ bay hơi - khi nói đến các biến, chúng ta không thể đồng thời nói rằng nó là cuối cùng (không đổi) và một số luồng có khả năng thay đổi nó... Xét cho cùng, nó là hằng số và bất kỳ lúc nào một luồng cũng có thể đọc được nó , nhưng không một sợi dây nào có thể thay đổi hằng số (Hội đồng Giám sát Toàn cầu sẽ không cho phép điều đó).
  2. Cuối cùng và Trừu tượng - các lớp và phương thức không thể vừa trừu tượng (trong hầu hết các trường hợp ngụ ý rằng cần phải làm rõ chúng để triển khai) vừa là cuối cùng, tức là. bất biến. Hóa ra hướng dẫn nói cách tạo ra một chiếc mũ bảo hiểm có độ bền tốt từ bất kỳ vật liệu nào (phần trừu tượng), nhưng để làm được điều này thì không được có lỗ trên đó (phần bắt buộc cuối cùng, không thể thay đổi).
  3. Trừu tượng và tĩnh - Một phương thức trừu tượng không thể tĩnh hoặc được đồng bộ hóa cùng một lúc. Một phương thức trừu tượng tĩnh không có ý nghĩa gì, bởi vì nó không những không làm gì cả mà còn thuộc về cả một lớp - kết quả là một thứ vô dụng.
  4. Trừu tượng và đồng bộ hóa - mục đích của việc đồng bộ hóa công việc với một phương thức không làm gì cả là gì?
Tóm tắt Vậy là phần mô tả về các công cụ sửa đổi đã kết thúc, mọi xung đột đã được giải quyết và bây giờ bạn có thể củng cố kết quả thu được bằng một bảng cheat - một sơ đồ bùa mê: Công cụ sửa đổi hoặc cách bỏ bùa trong thế giới Java - 3Tóm lại, tôi muốn nói rằng việc viết bài viết này là sự hiện thực hóa ý tưởng của tôi mong muốn nghiên cứu các sửa đổi. Trải nghiệm có thành công hay không là tùy bạn đánh giá. Tôi đang chờ những gợi ý của bạn để cải thiện/sửa chữa nó và có lẽ chúng ta sẽ cùng nhau biến nó thành một cẩm nang rất hữu ích cho những người mới bắt đầu chơi java.
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION