Rozdíl mezi třídou a objektem v OOP

Klíčové rozdíly mezi třídou a objektem

  • Třída je šablona pro vytváření objektů v programu, zatímco objekt je instancí třídy.
  • Třída je logická entita, zatímco objekt je fyzická entita.
  • Třída nepřiděluje paměťový prostor; na druhé straně objekt alokuje paměťový prostor.
  • Třídu můžete deklarovat pouze jednou, ale pomocí třídy můžete vytvořit více než jeden objekt.
  • S třídami nelze manipulovat, zatímco s objekty lze manipulovat.
  • Třídy nemají žádné hodnoty, zatímco objekty mají své vlastní hodnoty.
  • Třídu můžete vytvořit pomocí klíčového slova „class“, zatímco ručně můžete vytvořit objekt pomocí klíčového slova „new“ in Java.
Třída vs objekt
Třída vs objekt

Co je třída?

Třída je entita, která určuje, jak se bude objekt chovat a co bude objekt obsahovat. Jinými slovy, je to plán nebo soubor instrukcí pro vytvoření určitého typu objektu. Poskytuje počáteční hodnoty pro členské proměnné a členské funkce nebo metody.

Co je Object?

Objekt není nic jiného než samostatná komponenta, která se skládá z metod a vlastností, aby byla data užitečná. Pomáhá vám určit chování třídy.

Když například odešlete zprávu objektu, žádáte objekt, aby vyvolal nebo provedl jednu z jeho metod.

Z hlediska programování může být objektem datová struktura, proměnná nebo funkce, která má přidělené místo v paměti. Objekt je navržen jako hierarchie tříd.

Třída vs objekt – rozdíl mezi nimi

Zde je důležitý rozdíl mezi třídou a objektem:

Třída Objekt
Třída je šablona pro vytváření objektů v programu. Objekt je instancí třídy.
Třída je logická entita Objekt je fyzická entita
Třída při vytvoření nepřiděluje paměťový prostor. Objekt alokuje paměťový prostor, kdykoli jsou vytvořeny.
Třídu můžete deklarovat pouze jednou. Pomocí třídy můžete vytvořit více než jeden objekt.
Příklad: Auto. Příklad: Jaguar, BMW, Tesla atd.
Třída generuje objekty Předměty dodávají třídě život.
S třídami nelze manipulovat, protože nejsou dostupné v paměti. Dá se s nimi manipulovat.
Nemá žádné hodnoty, které jsou přidruženy k polím. Každý objekt má své vlastní hodnoty, které jsou spojeny s poli.
Třídu můžete vytvořit pomocí klíčového slova „class“. Objekt můžete vytvořit pomocí klíčového slova „new“. Java

Pochopte pojem Java Třídy a objekty s příkladem.

Vezměme si příklad vývoje systému správy domácích mazlíčků, speciálně určeného pro psy. Budete potřebovat různé informace o psech, jako jsou různá plemena psů, věk, velikost atd.

Musíte modelovat skutečné bytosti, tj. psy do softwarových entit.

Koncept Java Třídy a objekty

Navíc otázka za milion je, jak takový software navrhujete? Tady je řešení -

Nejprve si uděláme cvičení.

Níže můžete vidět obrázek tří různých plemen psů.

Koncept Java Třídy a objekty

Zastavte se hned teď! Uveďte rozdíly mezi nimi.

Některé z rozdílů, které jste možná uvedli, mohou být plemeno, věk, velikost, barva atd. Pokud se na chvíli zamyslíte, tyto rozdíly jsou také některé společné vlastnosti sdílené těmito psy. Tyto charakteristiky (plemeno, věk, velikost, barva) mohou tvořit datové členy pro váš objekt.

Koncept Java Třídy a objekty

Dále vyjmenujte běžné chování těchto psů, jako je spánek, sezení, jídlo atd. Takže toto budou akce našich softwarových objektů.

Koncept Java Třídy a objekty

Zatím jsme definovali následující věci,

  • Třída: Psi
  • Datové členy or Objekty: velikost, věk, barva, plemeno atd.
  • Metody: jíst, spát, sedět a běhat.

Koncept Java Třídy a objekty

Nyní pro různé hodnoty datových členů (velikost plemene, věk a barva) v Java třídy, získáte různé psí předměty.

Koncept Java Třídy a objekty

Pomocí tohoto přístupu OOPs můžete navrhnout jakýkoli program.

Třídy a objekty v Java

V níže uvedeném programu jsme vyhlásili třídu s názvem Pes. Pomocí nového klíčového slova jsme definovali objekt třídy s názvem „maltese“. V posledním příkazu System.out.println(maltese.getInfo()); zobrazujeme informace o psu, jako je plemeno, velikost, věk, barva atd.

// Class Declaration
class Dog {
    // Instance Variables
    String breed;
    String size;
    int age;
    String color;
  
    // method 1
    public String getInfo() {
        return ("Breed is: "+breed+" Size is:"+size+" Age is:"+age+" color is: "+color);
    }
}
public class Execute{
    public static void main(String[] args) {
        Dog maltese = new Dog();
        maltese.breed="Maltese";
        maltese.size="Small";
        maltese.age=2;
        maltese.color="white";
        System.out.println(maltese.getInfo());
    }
}

Výstup:

Plemeno je: maltézáček Velikost je: Malý Věk je:2 barva je: bílá

Typy třídy

Níže jsou uvedeny důležité typy tříd:

Odvozené třídy a dědičnost

Odvozená třída je třída, která je vytvořena nebo odvozena od jiné reminující třídy. Používá se pro zvýšení funkčnosti základní třídy. Tento typ třídy odvozuje a dědí vlastnosti z existující třídy. Může také přidávat nebo sdílet/rozšiřovat své vlastní vlastnosti.

Supertřídy:

Nadtřída je třída, ze které můžete odvodit mnoho podtříd.

Podtřídy:

Podtřída je třída, která je odvozena od nadtřídy.

Smíšené třídy

Smíšená třída je další funkcí, která vám pomáhá dědit vlastnosti jedné třídy na druhou. Používá podmnožinu funkcí třídy, zatímco odvozená třída používá kompletní sadu funkcí nadtřídy.

Použití třídy

Zde jsou důležitá použití třídy:

  • Třída se používá k uložení jak datových proměnných, tak členských funkcí.
  • Umožňuje vytvářet uživatelem definované objekty.
  • Třída poskytuje způsob, jak organizovat informace o datech.
  • Třídu můžete použít ke zdědění vlastnosti jiné třídy.
  • Třídy lze použít k využití výhod konstruktoru nebo destruktoru.
  • Lze jej použít pro velké množství dat a složité aplikace.

Použití objektu

Zde jsou důležitá použití objektu

  • Pomůže vám zjistit typ přijaté zprávy a typ vrácených odpovědí.
  • Pomocí objektu můžete získat přístup k části paměti pomocí proměnné odkazu na objekt.
  • Používá se k manipulaci s daty.
  • Objekty představují skutečný problém, pro který hledáte řešení.
  • Umožňuje datovým členům a členským funkcím provádět požadovanou úlohu.

Denní zpravodaj Guru99

Začněte svůj den s nejnovějšími a nejdůležitějšími zprávami o umělé inteligenci, které vám přinášíme právě teď.