Latest web development tutorials

kelas Swift

kelas Swift adalah kode yang digunakan untuk membangun struktur umum dan fleksibel.

Kita dapat mendefinisikan sifat (konstanta, variabel) dan metode untuk kelas.

Dan bahasa pemrograman lainnya berbeda, Swift tidak mengharuskan Anda untuk membuat kelas khusus untuk antarmuka dan implementasi file terpisah. Anda harus melakukannya adalah untuk mendefinisikan kelas dalam satu file, sistem akan secara otomatis menghasilkan kode untuk antarmuka eksternal lainnya.

Tipe tubuh dan struktur perbandingan

kelas Swift dan struktur memiliki banyak kesamaan. Umum adalah bahwa:

  • atribut yang didefinisikan digunakan untuk menyimpan nilai-nilai
  • Mendefinisikan sebuah metode untuk menyediakan fungsionalitas
  • Script didefinisikan digunakan untuk mengakses nilai anak perusahaan
  • Mendefinisikan konstruktor digunakan untuk menghasilkan nilai inisialisasi
  • Dengan memperluas fungsi diimplementasikan dalam rangka meningkatkan default
  • Sejalan dengan kesepakatan untuk menyediakan fungsi standar tertentu

Dibandingkan dengan struktur, kelas memiliki fitur tambahan berikut:

  • Warisan memungkinkan kelas mewarisi dari fitur kelas lain
  • jenis konversi memungkinkan Jenis runtime pemeriksaan dan interpretasi contoh kelas
  • Dekonstruksi memungkinkan contoh kelas untuk melepaskan sumber daya yang dialokasikan
  • Referensi menghitung memungkinkan beberapa referensi untuk kelas

sintaks:

Class classname {
   Definition 1
   Definition 2
   ……
   Definition N
}

definisi kelas

class student{
   var studname: String
   var mark: Int 
   var mark2: Int 
}

Instantiate kelas:

let studrecord = student()

contoh

import Cocoa

class MarksStruct {
    var mark: Int
    init(mark: Int) {
        self.mark = mark
    }
}

class studentMarks {
    var mark = 300
}
let marks = studentMarks()
print("成绩为 \(marks.mark)")

Output di atas eksekusi program adalah:

成绩为 300

Sebagai atribut referensi jenis Kelas

Atribut kelas dapat diaksesmelalui.Formatnya adalah:instantiate nama kelas nama properti:

import Cocoa

class MarksStruct {
   var mark: Int
   init(mark: Int) {
      self.mark = mark
   }
}

class studentMarks {
   var mark1 = 300
   var mark2 = 400
   var mark3 = 900
}
let marks = studentMarks()
print("Mark1 is \(marks.mark1)")
print("Mark2 is \(marks.mark2)")
print("Mark3 is \(marks.mark3)")

Output di atas eksekusi program adalah:

Mark1 is 300
Mark2 is 400
Mark3 is 900

operator identitas

Karena kelas yang referensi jenis, mungkin ada sejumlah konstanta dan variabel pada saat yang sama referensi ke instance kelas di latar belakang.

Untuk ditentukan apakah dua konstanta atau variabel mengacu pada contoh kelas yang sama, Swift dibangun dua operator yang identik:

operator identitasOperator nonidentical
Operator adalah: === Operator :! ==
Jika dua konstanta atau variabel referensi contoh sama kembali kelas yang benar Jika dua konstan atau variabel referensi yang berbeda contoh kelas mengembalikan nilai true

contoh

import Cocoa

class SampleClass: Equatable {
    let myProperty: String
    init(s: String) {
        myProperty = s
    }
}
func ==(lhs: SampleClass, rhs: SampleClass) -> Bool {
    return lhs.myProperty == rhs.myProperty
}

let spClass1 = SampleClass(s: "Hello")
let spClass2 = SampleClass(s: "Hello")

if spClass1 === spClass2 {// false
    print("引用相同的类实例 \(spClass1)")
}

if spClass1 !== spClass2 {// true
    print("引用不相同的类实例 \(spClass2)")
}

Output di atas eksekusi program adalah:

引用不相同的类实例 SampleClass