কম্পিউটার টিউটোরিয়াল

C++ এবং Java-তে ডিফল্ট ভার্চুয়াল বিহেভিয়ার


C++-এ মেথডগুলো ডিফল্টভাবে নন-ভার্চুয়াল। এগুলো virtual কীওয়ার্ড ব্যবহার করে ভার্চুয়াল ফাংশন বানানো যায়।

উদাহরণ কোড

#include <iostream> 
using namespace std; 
class B { 
public:
    void s() { // নন-ভার্চুয়াল ডিফল্টভাবে। ফাংশনের আগে virtual দিয়ে "In Derived" প্রিন্ট করানো যাবে
        cout << " In Base \n"; 
    } 
}; 
class D: public B { 
public:
    void s() { 
        cout << "In Derived \n"; 
    } 
}; 
int main(void) { 
    D d; // ক্লাস D-এর অবজেক্ট
    B &b = d; 
    b.s(); 
    return 0; 
}

আউটপুট

In Base.

Java-তে মেথডগুলো ডিফল্টভাবে ভার্চুয়াল। এগুলো final কীওয়ার্ড ব্যবহার করে নন-ভার্চুয়াল বানানো যায়।

উদাহরণ কোড (Java)

class B { 
    public void s() { 
        System.out.println("In Base"); // ভার্চুয়াল ডিফল্টভাবে 
    } 
} 
class D extends B { 
    public void s() { 
        System.out.println(" In Derived"); 
    } 
} 
public class Main { 
    public static void main(String[] args) { 
        B b = new D(); 
        b.show(); 
    } 
}

আউটপুট

In Base.

  1. C, C++, Java, এবং C#-এ প্রি-ইনক্রিমেন্ট এবং পোস্ট-ইনক্রিমেন্ট অপারেটরের আচরণ

  2. C++-এ ডিফল্ট কনস্ট্রাক্টর

  3. C++ এবং জাভায় ডিফল্ট ভার্চুয়াল বিহেভিয়ারের পার্থক্য

  4. জাভাতে ডিফল্ট অ্যারে মান