Logo ka.boatexistence.com

როდის გამოვიყენოთ სტატიკური და არასტატიკური მეთოდები c-ში?

Სარჩევი:

როდის გამოვიყენოთ სტატიკური და არასტატიკური მეთოდები c-ში?
როდის გამოვიყენოთ სტატიკური და არასტატიკური მეთოდები c-ში?

ვიდეო: როდის გამოვიყენოთ სტატიკური და არასტატიკური მეთოდები c-ში?

ვიდეო: როდის გამოვიყენოთ სტატიკური და არასტატიკური მეთოდები c-ში?
ვიდეო: Automata Theory. Building a RegExp machine: [1/16] RegExp history 2024, მაისი
Anonim

სტატიკური მეთოდი ეკუთვნის კლასს და არასტატიკური მეთოდი კლასის ობიექტს. სტატიკურ მეთოდებზე წვდომა შესაძლებელია უშუალოდ კლასიდან, ხოლო არასტატიკური მეთოდები (ან ინსტანციური მეთოდები, როგორც მე მინდა ვუწოდო მათ) უნდა იყოს წვდომა ინსტანციიდან.

როდის უნდა იყოს მეთოდი სტატიკური და არასტატიკური?

სტატიკური მეთოდი ეკუთვნის თავად კლასს და არასტატიკური (აკა მაგალითად) მეთოდი ეკუთვნის თითოეულ ობიექტს, რომელიც გენერირებულია ამ კლასიდან. თუ თქვენი მეთოდი აკეთებს რაღაცას, რაც არ არის დამოკიდებული მისი კლასის ინდივიდუალურ მახასიათებლებზე, გახადეთ ის სტატიკური (ეს პროგრამის კვალს დააკლებს).

როდის იყენებდით არასტატიკური მეთოდს?

არასტატიკურ მეთოდს Java-ში შეუძლია წვდომა სტატიკურ მეთოდებსა და ცვლადებზე შემდეგნაირად:

  1. არასტატიკურ მეთოდს შეუძლია წვდომა ნებისმიერ სტატიკურ მეთოდზე კლასის ეგზემპლარის შექმნის გარეშე.
  2. არასტატიკურ მეთოდს შეუძლია წვდომა ნებისმიერ სტატიკურ ცვლადზე, კლასის ეგზემპლარის შექმნის გარეშე, რადგან სტატიკური ცვლადი ეკუთვნის კლასს.

როდის უნდა გამოიყენოთ სტატიკური ფუნქციები?

როდესაც გსურთ გქონდეთ ცვლადი, რომელსაც ყოველთვის აქვს იგივე მნიშვნელობა კლასის ყველა ობიექტისთვის, სამუდამოდ და სამუდამოდ, გახადეთ ის სტატიკური. თუ თქვენ გაქვთ მეთოდი, რომელიც არ იყენებს ინსტანციის ცვლადებს ან ინსტანციის მეთოდებს, თქვენ უნდა გახადოთ ის სტატიკური.

რა განსხვავებაა სტატიკური და არასტატიკური ველის შორის?

სტატიკური ცვლადები ან ველები ეკუთვნის კლასს და არა კლასის რომელიმე ობიექტს. სტატიკური ცვლადი ინიცირებულია, როდესაც კლასი იტვირთება გაშვების დროს. არასტატიკური ველები არის ობიექტის სამაგალითო ველები. მათზე წვდომა ან გამოძახება შესაძლებელია მხოლოდ ობიექტის მითითებით.

გირჩევთ: