PHP OOP-ലെ സ്റ്റാറ്റിക് രീതികൾ

PHP-യിലെ സവിശേഷതകൾ
PHP OOP-ലെ സ്റ്റാറ്റിക് പ്രോപ്പർട്ടികൾ

ഈ ട്യൂട്ടോറിയലിൽ നമ്മൾ PHP OOP-ലെ സ്റ്റാറ്റിക് രീതികളെക്കുറിച്ച് കൂടുതൽ പഠിക്കും. സ്റ്റാറ്റിക് രീതികൾ എന്തിനുവേണ്ടിയാണ് ഉദ്ദേശിക്കുന്നത്, അവ എപ്പോൾ ഉപയോഗിക്കണം, വാക്യഘടനയും സ്റ്റാറ്റിക്, നോൺ-സ്റ്റാറ്റിക് രീതികൾ തമ്മിലുള്ള വ്യത്യാസവും ഞങ്ങൾ ചർച്ച ചെയ്യും.

PHP-യിലെ സ്റ്റാറ്റിക് രീതികൾ എന്തൊക്കെയാണ്?

  • സ്റ്റാറ്റിക് രീതികൾ ഉപയോഗിച്ച് സൃഷ്ടിക്കപ്പെടുന്നു സ്റ്റാറ്റിക്ക് കീവേഡ്.
  • ഒരു ക്ലാസിന്റെ സ്റ്റാറ്റിക് രീതികൾ നേരിട്ട് വിളിക്കുന്നു. അതിനർത്ഥം, ക്ലാസിന്റെ സ്റ്റാറ്റിക് രീതി എന്ന് വിളിക്കാൻ ഞങ്ങൾ ഉദാഹരണം സൃഷ്ടിക്കേണ്ടതില്ല.
  • ഒരു ക്ലാസിൽ സ്റ്റാറ്റിക്, നോൺ-സ്റ്റാറ്റിക് രീതികൾ അടങ്ങിയിരിക്കാം.
  • ഒരു ക്ലാസിന്റെ സ്റ്റാറ്റിക് രീതിയെ വിളിക്കാൻ, ഞങ്ങൾ സ്കോപ്പ് റെസലൂഷൻ ഓപ്പറേറ്റർ ഉപയോഗിക്കുന്നു ::

PHP-യിലെ സ്റ്റാറ്റിക് രീതിയുടെ വാക്യഘടന

<?php
class ClassName {
  public static function method() {
    echo "Hello from PHP!";
  }
}
?>

സ്റ്റാറ്റിക് രീതിയെ വിളിക്കാനുള്ള വാക്യഘടന

ClassName::staticMethod();

ഉദാഹരണം

<?php
class Example {
  public static function greetings() {
    echo "Hello from PHP!";
  }
}

// Calling static method
Example::greetings();
?>
  • മുകളിലുള്ള ഉദാഹരണത്തിൽ, സ്റ്റാറ്റിക് രീതി ഉൾക്കൊള്ളുന്ന ഒരു ക്ലാസ് ഞങ്ങൾ സൃഷ്ടിക്കുന്നു.
  • സ്കോപ്പ് റെസലൂഷൻ രീതി ഉപയോഗിച്ച് ഞങ്ങൾ ഈ ക്ലാസിന്റെ സ്റ്റാറ്റിക് രീതിയെ പുറത്ത് വിളിക്കുന്നു.

ക്ലാസിനുള്ളിലെ സ്റ്റാറ്റിക് രീതി വിളിക്കുന്നു - PHP

  • PHP-യിൽ, സ്വയം കീവേഡ് ക്ലാസിനുള്ളിൽ അതിന്റേതായ സ്റ്റാറ്റിക് രീതി വിളിക്കാൻ അനുവദിക്കുന്നു. സ്റ്റാറ്റിക് രീതി ഉപയോഗിച്ച് ഞങ്ങൾ ഒരു ക്ലാസ് സൃഷ്‌ടിക്കുകയും ക്ലാസിന്റെ കൺസ്‌ട്രക്‌ടറിനുള്ളിൽ അതിനെ വിളിക്കുകയും ചെയ്യുന്ന ഇനിപ്പറയുന്ന ഉദാഹരണം നോക്കുക.
  • സ്വയം::methodName() എന്നത് ക്ലാസിനുള്ളിലെ സ്റ്റാറ്റിക് രീതിയെ വിളിക്കുന്നതിനുള്ള പൊതു വാക്യഘടനയാണ്.
<?php
class Example {
  public static function greetings() {
    echo "Hello from PHP!";
  }

  public function __construct() {
    self::greetings();
  }
}

new Example();
?>

മറ്റൊരു ക്ലാസിനുള്ളിലെ സ്റ്റാറ്റിക് രീതി വിളിക്കുന്നു - PHP

സ്റ്റാറ്റിക് രീതികൾ ഉപയോഗിക്കുന്നത് വളരെ രസകരമാണ്, മറ്റൊരു ക്ലാസിനുള്ളിൽ നമുക്ക് ഒരു പൊതു സ്റ്റാറ്റിക് രീതി എന്ന് വിളിക്കാം. ഓർക്കുക, ഇതൊരു പൊതു സ്റ്റാറ്റിക് രീതി ആയിരിക്കണം.

<?php
class Example{
  public static function greetings() {
    echo "Hello from PHP!";
  }
}

class Example2{
  public function msg() {
    Example::greetings();
  }
}
?>

ചൈൽഡ് ക്ലാസ്സിൽ ഒരു സ്റ്റാറ്റിക് രീതി വിളിക്കുന്നു - PHP

അനന്തരാവകാശത്തിന്റെ കാര്യത്തിൽ, ചൈൽഡ് ക്ലാസിനുള്ളിലെ പാരന്റ് ക്ലാസ്സിന്റെ സ്റ്റാറ്റിക് രീതി ഉപയോഗിച്ച് നമുക്ക് വിളിക്കാം പാരന്റ് കീവേഡ്. താഴെയുള്ള ഉദാഹരണം നോക്കുക.

<?php
class Example {
  protected static function getMessage() {
    return "Message from static method";
  }
}

class Child1 extends domain {
  public $name;
  public function __construct() {
    $this->name= parent::getMessage();
  }
}

$child1= new child1();
echo $child1-> name;
?>
  • മുകളിലുള്ള ഉദാഹരണത്തിൽ, ചില സ്റ്റാറ്റിക് രീതി ഉപയോഗിച്ച് ഞങ്ങൾ ഒരു പാരന്റ് ക്ലാസ് സൃഷ്ടിക്കുന്നു.
  • കൂടാതെ, പാരന്റ് ക്ലാസ് വിപുലീകരിക്കുന്ന മറ്റൊരു ക്ലാസ് ഞങ്ങൾ സൃഷ്ടിക്കുന്നു.
  • ഉപയോഗിക്കുന്ന പാരന്റ് ക്ലാസ്സിന്റെ സ്റ്റാറ്റിക് രീതി വിളിക്കുക പാരന്റ് സ്റ്റാറ്റിക് രീതിയുടെ പേരിനൊപ്പം കീവേഡ്.

കുറിപ്പ്: ഞങ്ങൾ മുമ്പത്തെ വിഭാഗത്തിൽ സൂചിപ്പിച്ചതുപോലെ, മറ്റൊരു ക്ലാസിനുള്ളിൽ ഒരു സ്റ്റാറ്റിക് രീതി വിളിക്കുന്നതിന് അത് പൊതുവായതായിരിക്കണം. എന്നിരുന്നാലും, പാരന്റ് ക്ലാസ്സിന്റെ (പൈതൃകം) സ്റ്റാറ്റിക് രീതിയെ വിളിക്കുന്ന കാര്യത്തിൽ, സ്റ്റാറ്റിക് രീതി ആക്സസ് മോഡിഫയർ ആകാം പൊതു or സംരക്ഷിച്ചിരിക്കുന്നു.

സ്റ്റാറ്റിക്, നോൺ സ്റ്റാറ്റിക് രീതികൾ തമ്മിലുള്ള വ്യത്യാസം

സ്റ്റാറ്റിക് രീതിനോൺ സ്റ്റാറ്റിക് രീതി
സ്റ്റാറ്റിക് മെത്തേഡിനുള്ളിലെ ക്ലാസിന്റെയോ മറ്റൊരു ക്ലാസിന്റെയോ സ്റ്റാറ്റിക് പ്രോപ്പർട്ടികൾ മാത്രമേ നമുക്ക് ആക്സസ് ചെയ്യാൻ കഴിയൂ.ക്ലാസിന്റെ അല്ലെങ്കിൽ മറ്റൊരു ക്ലാസിന്റെ സ്റ്റാറ്റിക്, നോൺ-സ്റ്റാറ്റിക് പ്രോപ്പർട്ടികൾ നമുക്ക് നോൺ-സ്റ്റാറ്റിക് രീതിക്കുള്ളിൽ ആക്‌സസ് ചെയ്യാൻ കഴിയും.
സ്റ്റാറ്റിക് രീതി ആദ്യകാല ബൈൻഡിംഗ് അല്ലെങ്കിൽ കംപൈൽ-ടൈം ബൈൻഡിംഗ് ഉപയോഗിക്കുന്നു.നോൺ-സ്റ്റാറ്റിക് രീതി ഡൈനാമിക് അല്ലെങ്കിൽ റൺടൈം ബൈൻഡിംഗ് ഉപയോഗിക്കുന്നു.
പ്രോഗ്രാമിന്റെ നിർവ്വഹണ വേളയിൽ സ്റ്റാറ്റിക് രീതികൾ നില നിലനിർത്തുന്നു, അതിനാൽ നേരത്തെയുള്ള ബൈൻഡിംഗ് കാരണം, അവ മറ്റൊരു ക്ലാസിന് അസാധുവാക്കാൻ കഴിയില്ല.നോൺ-സ്റ്റാറ്റിക് രീതിയുടെ റൺടൈം ബൈൻഡിംഗ് അല്ലെങ്കിൽ ഡൈനാമിക് സ്വഭാവം കാരണം, നമുക്ക് അവയെ മറ്റൊരു ക്ലാസിൽ അസാധുവാക്കാനാകും.
സ്റ്റാറ്റിക് രീതിയിലുള്ള മെമ്മറി അലോക്കേഷൻ കൂടുതൽ കാര്യക്ഷമമാണ്, കാരണം പ്രോഗ്രാം എക്സിക്യൂട്ട് ചെയ്തുകഴിഞ്ഞാൽ അത് റാമിനുള്ളിൽ ഒരു മെമ്മറി ബ്ലോക്ക് വ്യക്തമാക്കുന്നു. പ്രോഗ്രാം അവസാനിക്കുന്നത് വരെ ഇത് ഒരിക്കലും ആവർത്തിക്കില്ല.ഡൈനാമിക് ബൈൻഡിംഗ് കാരണം നോൺ-സ്റ്റാറ്റിക് രീതികൾക്ക് മെമ്മറി അലോക്കേഷനിൽ കാര്യക്ഷമത കുറവാണ്. ഓരോ തവണയും നോൺ-സ്റ്റാറ്റിക് രീതി വിളിക്കുമ്പോൾ, അത് മെമ്മറി അനുവദിക്കുകയും മെത്തേഡിന്റെ എക്സിക്യൂഷൻ പൂർത്തിയായതിന് ശേഷം ഡീലോക്കേറ്റ് ചെയ്യുകയും ചെയ്യുന്നു.
സ്റ്റാറ്റിക് vs നോൺ-സ്റ്റാറ്റിക് രീതി

സ്റ്റാറ്റിക് രീതിയുടെ ഔദ്യോഗിക PHP ഡോക്യുമെന്റേഷനിലേക്കുള്ള റഫറൻസ്.

PHP-യിലെ സവിശേഷതകൾ
PHP OOP-ലെ സ്റ്റാറ്റിക് പ്രോപ്പർട്ടികൾ
അടയ്ക്കുക

PHP-യെ കുറിച്ച് കാലികമായിരിക്കുക!

ഞങ്ങൾ സ്പാം ചെയ്യുന്നില്ല!

en English
X
ടോപ്പ് സ്ക്രോൾ