స్టాటిక్ మరియు డైనమిక్ బైండింగ్ మధ్య వ్యత్యాసం

రచయిత: Laura McKinney
సృష్టి తేదీ: 1 ఏప్రిల్ 2021
నవీకరణ తేదీ: 16 మే 2024
Anonim
జావా ఇంటర్వ్యూ 04 - స్టాటిక్ బైండింగ్ Vs డైనమిక్ బైండింగ్
వీడియో: జావా ఇంటర్వ్యూ 04 - స్టాటిక్ బైండింగ్ Vs డైనమిక్ బైండింగ్

విషయము


‘ఫంక్షన్ డెఫినిషన్’ యొక్క ‘ఫంక్షన్ కాల్’ లేదా ‘వేరియబుల్’ కు ‘విలువ’ యొక్క అసోసియేషన్‌ను బంధించడం ‘బైండింగ్’ అంటారు. సంకలనం సమయంలో, ప్రతి ‘ఫంక్షన్ డెఫినిషన్’కి మెమరీ చిరునామా ఇవ్వబడుతుంది; ఫంక్షన్ కాలింగ్ పూర్తయిన వెంటనే, ప్రోగ్రామ్ ఎగ్జిక్యూషన్ నియంత్రణ ఆ మెమరీ చిరునామాకు వెళ్లి, ఆ ప్రదేశంలో నిల్వ చేయబడిన ఫంక్షన్ కోడ్‌ను అమలు చేస్తుంది, ఇది ‘ఫంక్షన్ కాల్’ ను ‘ఫంక్షన్ డెఫినిషన్’ కు బంధించడం. బైండింగ్‌ను ‘స్టాటిక్ బైండింగ్’ మరియు ‘డైనమిక్ బైండింగ్’ అని వర్గీకరించవచ్చు.

రన్‌టైమ్‌కు ముందే ఇది ఇప్పటికే తెలిసి ఉంటే, ఏ ఫంక్షన్ ప్రారంభించబడుతుందో లేదా వేరియబుల్‌కు ఏ విలువ కేటాయించబడినా, అది ‘స్టాటిక్ బైండింగ్’. రన్‌టైమ్‌లో తెలిస్తే, దాన్ని ‘డైనమిక్ బైండింగ్’ అంటారు.

  1. పోలిక చార్ట్
  2. నిర్వచనం
  3. కీ తేడాలు
  4. ముగింపు

పోలిక చార్ట్:

పోలిక కోసం ఆధారంస్టాటిక్ బైండింగ్డైనమిక్ బైండింగ్
సంఘటన సంభవించిందికంపైల్ సమయంలో జరిగే సంఘటనలు "స్టాటిక్ బైండింగ్".
రన్ సమయంలో జరిగే సంఘటనలు "డైనమిక్ బైండింగ్".
సమాచారంఫంక్షన్‌కు కాల్ చేయడానికి అవసరమైన మొత్తం సమాచారం కంపైల్ సమయంలో తెలుస్తుంది.రన్ టైమ్‌లో తెలుసుకోవలసిన ఫంక్షన్‌కు అన్ని సమాచారం అవసరం.
అడ్వాంటేజ్సమర్థత.వశ్యత.
సమయంవేగంగా అమలు.నెమ్మదిగా అమలు.
ఇంకొక పేరుప్రారంభ బైండింగ్.లేట్ బైండింగ్.
ఉదాహరణఓవర్లోడ్ ఫంక్షన్ కాల్, ఓవర్లోడ్ ఆపరేటర్లు.C ++ లో వర్చువల్ ఫంక్షన్, జావాలో ఓవర్రైడ్ పద్ధతులు.

స్టాటిక్ బైండింగ్ యొక్క నిర్వచనాలు

కంపైలర్ ఒక ఫంక్షన్‌ను కాల్ చేయడానికి అవసరమైన మొత్తం సమాచారాన్ని లేదా కంపైల్ సమయంలో వేరియబుల్స్ యొక్క అన్ని విలువలను గుర్తించినప్పుడు, దీనిని “స్టాటిక్ బైండింగ్". అవసరమైన అన్ని సమాచారం రన్‌టైమ్‌కు ముందే తెలిసినందున, ఇది ప్రోగ్రామ్ సామర్థ్యాన్ని పెంచుతుంది మరియు ఇది ప్రోగ్రామ్ అమలు వేగాన్ని కూడా పెంచుతుంది.


స్టాటిక్ బైండింగ్ ఒక ప్రోగ్రామ్‌ను చాలా సమర్థవంతంగా చేస్తుంది, అయితే ఇది ప్రోగ్రామ్‌లో వశ్యతను తగ్గిస్తుంది, ఎందుకంటే ‘వేరియబుల్ యొక్క విలువలు’ మరియు ‘ఫంక్షన్ కాలింగ్’ ప్రోగ్రామ్‌లో ముందే నిర్వచించబడ్డాయి. కోడింగ్ సమయంలో ఒక ప్రోగ్రామ్‌లో స్టాటిక్ బైండింగ్ అమలు చేయబడుతుంది.

ఒక ఫంక్షన్ లేదా ఆపరేటర్‌ను ఓవర్‌లోడ్ చేయడం కంపైల్-టైమ్ పాలిమార్ఫిజానికి ఉదాహరణ, అనగా స్టాటిక్ బైండింగ్.

ఓవర్లోడింగ్ యొక్క ఉదాహరణతో C ++ లో స్టాటిక్ బైండింగ్ అమలు

# ఉన్నాయి నేమ్‌స్పేస్ std ఉపయోగించి; తరగతి ఓవర్లోడ్ {int a, b; పబ్లిక్: int లోడ్ (int x) {// మొదటి లోడ్ () ఫంక్షన్. ఒక = x; cout << "x యొక్క విలువ" <funct (); // పై స్టేట్మెంట్ ఏ తరగతుల ఫంక్షన్‌ను ప్రారంభించాలో నిర్ణయిస్తుంది. p = & d1; // పాయింటర్ మార్పుల వ్లాయు. P-> funct (); // పై స్టేట్మెంట్ ఏ తరగతుల ఫంక్షన్‌ను ప్రారంభించాలో నిర్ణయిస్తుంది. p = & d2; // మళ్ళీ పాయింటర్ మార్పుల vlaue. P-> funct (); // పై స్టేట్మెంట్ ఏ తరగతుల ఫంక్షన్‌ను ప్రారంభించాలో నిర్ణయిస్తుంది. తిరిగి 0; }

ప్రోగ్రామ్ అమలులో ఉన్నందున పాయింటర్ యొక్క విలువ మారుతుంది మరియు పాయింటర్ యొక్క విలువ ఏ తరగతి పనితీరును అమలు చేయాలో నిర్ణయిస్తుంది. కాబట్టి ఇక్కడ, సమాచారం రన్ టైంలో అందించబడుతుంది, ఇది అమలును మందగించే డేటాను బంధించడానికి సమయం పడుతుంది.


  1. కంపైల్ సమయంలో జరిగే సంఘటనలు, ఫంక్షన్ కోడ్ ఒక ఫంక్షన్ కాల్ లేదా వేరియబుల్‌కు విలువను కేటాయించడంతో సంబంధం కలిగి ఉంటుంది, వీటిని స్టాటిక్ / ఎర్లీ బైండింగ్ అంటారు. దీనికి విరుద్ధంగా, రన్‌టైమ్‌లో ఈ పనులు పూర్తయినప్పుడు, వాటిని డైనమిక్ / లేట్ బైండింగ్ అంటారు.
  2. స్టాటిక్ బైండింగ్‌లో ‘సమర్థత’ పెరుగుతుంది, ఎందుకంటే అమలుకు ముందు మొత్తం డేటా సేకరించబడుతుంది. కానీ డైనమిక్ బైండింగ్‌లో, డేటా రన్‌టైమ్‌లో పొందబడుతుంది, అందువల్ల వేరియబుల్‌ను ఏ విలువను కేటాయించాలో మరియు రన్‌టైమ్‌లో ఏ ఫంక్షన్‌ను ప్రారంభించాలో నిర్ణయించగలము, ఇది అమలును ‘సరళంగా’ చేస్తుంది.
  3. ఒక ప్రోగ్రామ్‌ను అమలు చేయడానికి అవసరమైన మొత్తం డేటా అమలుకు ముందు తెలిసినందున ‘స్టాటిక్ బైండింగ్’ ప్రోగ్రామ్ యొక్క అమలును ‘వేగంగా’ చేస్తుంది. ప్రోగ్రామ్‌ను అమలు చేయడానికి అవసరమైన ‘డైనమిక్ బైండింగ్’ డేటాలో ఎగ్జిక్యూషన్ సమయంలో కంపైలర్‌కు తెలుసు, ఇది విలువలను ఐడెంటిఫైయర్‌లకు బంధించడానికి సమయం పడుతుంది; అందువల్ల, ఇది ప్రోగ్రామ్ అమలు నెమ్మదిగా చేస్తుంది.
  4. స్టాటిక్ బైండింగ్‌ను ప్రారంభ బైండింగ్ అని కూడా పిలుస్తారు, ఎందుకంటే ఫంక్షన్ కోడ్ కంపైల్ సమయంలో ఫంక్షన్ కాల్‌తో సంబంధం కలిగి ఉంటుంది, ఇది డైనమిక్ బైండింగ్ కంటే ముందే ఉంటుంది, దీనిలో ఫంక్షన్ కోడ్ రన్‌టైమ్‌లో ఫంక్షన్ కాల్‌తో సంబంధం కలిగి ఉంటుంది, కనుక దీనిని లేట్ బైండింగ్ అని కూడా పిలుస్తారు.

ముగింపు:

అయినప్పటికీ, వేరియబుల్ మరియు ఫంక్షన్ కాలింగ్ యొక్క విలువల గురించి మాకు ముందస్తు జ్ఞానం ఉన్నప్పుడు, మేము స్టాటిక్ బైండింగ్‌ను వర్తింపజేస్తాము. దీనికి విరుద్ధంగా, డైనమిక్ బైండింగ్‌లో, మేము అమలు సమయంలో మొత్తం సమాచారాన్ని అందిస్తాము.