Baca dalam bahasa Inggris

Bagikan melalui


Object Kelas

Definisi

Mendukung semua kelas dalam hierarki kelas .NET dan menyediakan layanan tingkat rendah untuk kelas turunan. Ini adalah kelas dasar utama dari semua kelas .NET; ini adalah akar dari hierarki jenis.

C#
public class Object
C#
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDual)]
[System.Serializable]
public class Object
C#
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDual)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class Object
Atribut

Contoh

Contoh berikut mendefinisikan jenis Titik yang berasal dari Object kelas dan mengambil alih banyak metode Object virtual kelas. Selain itu, contoh menunjukkan cara memanggil banyak metode statis dan instans Object kelas.

C#
using System;

// The Point class is derived from System.Object.
class Point
{
    public int x, y;

    public Point(int x, int y)
    {
        this.x = x;
        this.y = y;
    }

    public override bool Equals(object obj)
    {
        // If this and obj do not refer to the same type, then they are not equal.
        if (obj.GetType() != this.GetType()) return false;

        // Return true if  x and y fields match.
        var other = (Point) obj;
        return (this.x == other.x) && (this.y == other.y);
    }

    // Return the XOR of the x and y fields.
    public override int GetHashCode()
    {
        return x ^ y;
    }

    // Return the point's value as a string.
    public override String ToString()
    {
        return $"({x}, {y})";
    }

    // Return a copy of this point object by making a simple field copy.
    public Point Copy()
    {
        return (Point) this.MemberwiseClone();
    }
}

public sealed class App
{
    static void Main()
    {
        // Construct a Point object.
        var p1 = new Point(1,2);

        // Make another Point object that is a copy of the first.
        var p2 = p1.Copy();

        // Make another variable that references the first Point object.
        var p3 = p1;

        // The line below displays false because p1 and p2 refer to two different objects.
        Console.WriteLine(Object.ReferenceEquals(p1, p2));

        // The line below displays true because p1 and p2 refer to two different objects that have the same value.
        Console.WriteLine(Object.Equals(p1, p2));

        // The line below displays true because p1 and p3 refer to one object.
        Console.WriteLine(Object.ReferenceEquals(p1, p3));

        // The line below displays: p1's value is: (1, 2)
        Console.WriteLine($"p1's value is: {p1.ToString()}");
    }
}

// This code example produces the following output:
//
// False
// True
// True
// p1's value is: (1, 2)
//

Keterangan

Untuk informasi selengkapnya tentang API ini, lihat Keterangan API Tambahan untuk Objek.

Konstruktor

Object()

Menginisialisasi instans baru kelas Object.

Metode

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

Equals(Object, Object)

Menentukan apakah instans objek yang ditentukan dianggap sama.

Finalize()

Memungkinkan objek untuk mencoba membebaskan sumber daya dan melakukan operasi pembersihan lainnya sebelum direklamasi kembali oleh pengumpulan sampah.

GetHashCode()

Berfungsi sebagai fungsi hash default.

GetType()

Mendapatkan instans Type saat ini.

MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

ReferenceEquals(Object, Object)

Menentukan apakah instans yang ditentukan Object adalah instans yang sama.

ToString()

Mengembalikan string yang mewakili objek saat ini.

Berlaku untuk

Produk Versi
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Keamanan Thread

Anggota statis publik (Shared dalam Visual Basic) dari jenis ini aman untuk utas. Anggota instans tidak dijamin aman untuk utas.