Phương thức sơ thẩm là các phương thức yêu cầu một đối tượng của lớp của nó được tạo trước khi nó có thể được gọi. Để gọi một phương thức thể hiện, chúng ta phải tạo một Đối tượng của lớp mà phương thức đó được định nghĩa.
public void geek(String name) { // code to be executed.... } // Return type can be int, float String or user defined data type.Phân bổ bộ nhớ. Bản thân các phương thức này được lưu trữ trong không gian Tạo vĩnh viễn của heap nhưng các tham số (đối số được truyền cho chúng) và các biến cục bộ của chúng cũng như giá trị được trả về được phân bổ trong ngăn xếp. Chúng có thể được gọi trong cùng một lớp mà chúng cư trú hoặc từ các lớp khác nhau được định nghĩa trong cùng một gói hoặc các gói khác tùy thuộc vào loại truy cập được cung cấp cho phương thức thể hiện mong muốn.
Điểm quan trọng.
- (Các) phương thức sơ thẩm thuộc về Đối tượng của lớp, không thuộc về lớp tôi. e. chúng có thể được gọi sau khi tạo Đối tượng của lớp
- Các phương thức sơ thẩm không được lưu trữ trên cơ sở từng trường hợp, ngay cả với các phương thức ảo. Chúng được lưu trữ trong một vị trí bộ nhớ duy nhất và chúng chỉ “biết” chúng thuộc về đối tượng nào vì con trỏ này được truyền khi bạn gọi chúng
- Chúng có thể bị ghi đè vì chúng được giải quyết bằng liên kết động trong thời gian chạy
Dưới đây là việc triển khai truy cập phương thức thể hiện
Java
GeeksforGeeks0
GeeksforGeeks1 GeeksforGeeks2
GeeksforGeeks3 GeeksforGeeks4
GeeksforGeeks0GeeksforGeeks1GeeksforGeeks2GeeksforGeeks3
GeeksforGeeks0GeeksforGeeks5
GeeksforGeeks0GeeksforGeeks7
GeeksforGeeks0GeeksforGeeks9
GeeksforGeeks0GeeksforGeeks21 GeeksforGeeks22 GeeksforGeeks23GeeksforGeeks24GeeksforGeeks25
GeeksforGeeks26
GeeksforGeeks3 GeeksforGeeks28
GeeksforGeeks0GeeksforGeeks21 GeeksforGeeks11 GeeksforGeeks22 GeeksforGeeks13
GeeksforGeeks0GeeksforGeeks15
GeeksforGeeks16____217
GeeksforGeeks16______219____300 GeeksforGeeks01
GeeksforGeeks16____303
GeeksforGeeks16______305______306GeeksforGeeks07
GeeksforGeeks16____309
GeeksforGeeks0GeeksforGeeks26
GeeksforGeeks26
Đầu raGeeksforGeeks
Phương thức tĩnh
Các phương thức tĩnh là các phương thức trong Java có thể được gọi mà không cần tạo đối tượng của lớp. Chúng được tham chiếu bởi chính tên lớp hoặc tham chiếu tới Đối tượng của lớp đó.
GeeksforGeeks2Cấp phát bộ nhớ.
Chúng được lưu trữ trong không gian Tạo vĩnh viễn của đống vì chúng được liên kết với lớp mà chúng cư trú chứ không phải đối tượng của lớp đó. Nhưng các biến cục bộ của chúng và (các) đối số được truyền cho chúng được lưu trữ trong ngăn xếp. Vì chúng thuộc về lớp nên chúng có thể được gọi đến mà không cần tạo đối tượng của lớp
Điểm quan trọng.
- (Các) phương thức tĩnh được liên kết với lớp mà chúng cư trú. e. chúng được gọi mà không tạo một thể hiện của lớp tôi. e Tên Lớp. methodName(args)
- Chúng được thiết kế với mục đích được chia sẻ giữa tất cả các đối tượng được tạo từ cùng một lớp
- Các phương thức tĩnh không thể bị ghi đè, vì chúng được giải quyết bằng cách sử dụng liên kết tĩnh bởi trình biên dịch tại thời điểm biên dịch. Tuy nhiên, chúng ta có thể có các phương thức cùng tên được khai báo tĩnh trong cả lớp cha và lớp con, nhưng nó sẽ được gọi là Ẩn phương thức vì phương thức lớp dẫn xuất sẽ ẩn phương thức lớp cơ sở
Dưới đây là hình minh họa truy cập các phương thức tĩnh.
Java
GeeksforGeeks03
GeeksforGeeks04
GeeksforGeeks1 GeeksforGeeks2
GeeksforGeeks3 GeeksforGeeks08
GeeksforGeeks0GeeksforGeeks21 GeeksforGeeks11 GeeksforGeeks12GeeksforGeeks2GeeksforGeeks3
GeeksforGeeks0GeeksforGeeks21 GeeksforGeeks11 GeeksforGeeks22 GeeksforGeeks19
GeeksforGeeks0GeeksforGeeks15
GeeksforGeeks16____923
GeeksforGeeks0GeeksforGeeks26
GeeksforGeeks26
GeeksforGeeks3 GeeksforGeeks28
GeeksforGeeks0GeeksforGeeks21 GeeksforGeeks11 GeeksforGeeks22 GeeksforGeeks13
GeeksforGeeks0GeeksforGeeks15
GeeksforGeeks16____937
GeeksforGeeks16____939
GeeksforGeeks16____941____942GeeksforGeeks07
GeeksforGeeks16____945
GeeksforGeeks16____937
GeeksforGeeks16____949
________ 216 ________ 101 ________ 300 ________ 103
GeeksforGeeks16______105______106GeeksforGeeks07
GeeksforGeeks16____109
GeeksforGeeks0GeeksforGeeks26
GeeksforGeeks26
Đầu raGeeksforGeeks1
Ghi chú. Các biến tĩnh và các giá trị của chúng (nguyên hàm hoặc tham chiếu) được xác định trong lớp được lưu trữ trong không gian bộ nhớ PermGen.
Nếu biến tĩnh đề cập đến một Đối tượng thì sao?
GeeksforGeeks0Trong dòng đầu tiên, giá trị 1 sẽ được lưu trữ trong phần PermGen. Trong dòng thứ hai, obj tham chiếu sẽ được lưu trữ trong phần PermGen và Đối tượng mà nó đề cập đến sẽ được lưu trữ trong phần heap