Klasse und Objekt in Swift
1. Ihre erste Klasse
Swift ist eine aus C und Objective-C geerbte Sprache. Sie ist eine Verfahrensorientierte und Objektsorientierte Sprache. Die Klasse ist ein Begriff der objektsorientierten Programmierungssprache. Die Klasse hat die Attribute und die Methode. Die Klasse wird eine Funktion der Klasse verstanden. Aus einer Klasse können Sie ein Objekt erstellen
Swift benutzt ein Schlusselwort class um eine Klasse zu melden
Eine Hauptfile Rectangle.swift erstellen
Rectangle.swift
import Foundation
class Rectangle {
// width property
var width: Int = 5;
// height property
var height: Int = 10;
// Default-Constructor (kein Parameter)
// (Zur Erstellung des Objekt)
init() {
}
// Ein Constructor hat 2 Parameter.
// (Zur Erstellung des Objekt)
// self.width zeigt nach dem Property width der Klasse.
init (width: Int, height: Int) {
self.width = width
self.height = height
}
// Die Methode ist zur Kalkulation der Fläche des Rechsteck benutzt
func getArea() -> Int {
var area = self.width * self.height
return area
}
}
Die Code benutze die Klasse Rectangle um das Objekt zu erstellen.
RectangleTest.swift
import Foundation
func test_rectangle() {
print("Create a Rectangle rec1");
// Ein Objekt Rectangle durch den Default Constructor: init() erstellen
var rec1 = Rectangle()
// width, height ausdrucken.
print("rec1.width = \(rec1.width)")
print("rec1.height = \(rec1.height)")
// Die Aufruf nach der Methode um die Fläche zu kalkulieren.
var area1 = rec1.getArea()
print("area1 = \(area1)")
print("---------")
print("Create a Rectangle rec2");
// Ein Objekt Rectangle durch den Default Constructor mit 2 Parameter init(Int,Int) erstellen
var rec2 = Rectangle(width: 10, height: 15)
// width, height ausdrucken.
print("rec2.width = \(rec2.width)")
print("rec2.height = \(rec2.height)")
// Die Aufruf nach der Methode um die Fläche zu kalkulieren.
var area2 = rec2.getArea()
print("area2 = \(area2)")
}
Die File main.swift ändern um das Beispiel zu prüfen
main.swift
import Foundation
test_rectangle()
Das Beispiel durchführen
Create a Rectangle rec1
rec1.width = 5
rec1.height = 10
area1 = 50
----------
Create a Rectangle rec2
rec2.width = 10
rec3.height = 15
area2 = 150
Jetzt können Sie die Erklärungen über die Klasse lesen. Sie sind sehr wichtig
Was passiert wenn Sie ein Objekt nach dem default constructor)?
Das Objekt Rectangle durch den Constructor mit 2 Parameter erstellen
2. Das Regelung über die Aufruf vom Constructor
Die Regelung Swift 2.1 zur Aufruf nach Funktion (function), der Methode (method), und dem Construktor (constructor):
- Der erste Parameter zur Übertragung für die Funktion (oder die Methode) fordert das Label des Parameter nicht
- Die anderen Parameter zur Übertragung für die Funktion oder die Methode fordert das Label des Parameter.
- Die Parameter zur Übertragung für den Constructor fordert das Ladel des Parameter
3. Der Operator zum Vergleich des Objekt
Im Swift wenn Sie ein Objekt durch den Constructor erstellen, wird eine echte Enitiät in der Speicherung erstellt. Sie hat eine bestimmte Addresse.
Ein Operator für die Zuweisung eines Objekt AA durch ein Objekt BB erstellt keine Enitität in der Speicherung mehr. Er zeigt auf die Address von AA nach der Addresse von BB
Ein Operator für die Zuweisung eines Objekt AA durch ein Objekt BB erstellt keine Enitität in der Speicherung mehr. Er zeigt auf die Address von AA nach der Addresse von BB
Der Operator === wird benutzt um die Addresse, nach der 2 Objekte zeigten zu vergleichen. Es kehrt true rück wenn die 2 Objekt auf die gleichen Addresse in der Speicherung zeigen. Der Operator !== wird benutzt um die Addresse, nach der 2 Objekte zeigten. Es kehrt true rück wenn die 2 Objekt auf die 2 unterschiedlichen Addresse zeigen
IdentifyOperator.swift
import Foundation
func identifyOperator() {
// Die Erstellung des Objekt : r1
var r1 = Rectangle(width: 20,height: 10)
// Die Erstellung des Objekt: r2
var r2 = Rectangle(width: 20,height: 10)
var r3 = r1
var b12:Bool = r1 === r2
var b13:Bool = r1 === r3
print("r1 === r2 ? \(b12)") // false
print("r1 === r3 ? \(b13)") // true
var bb12: Bool = r1 !== r2
var bb13: Bool = r1 !== r3
print("r1 !== r2 ? \(b12)") // true
print("r1 !== r3 ? \(b13)") // false
}
Das Beispiel durchführen
r1 === r2 ? false
r1 === r3 ? true
r1 !== r2 ? false
r1 !== r3 ? true
Anleitungen Swift
- Installieren Sie die virtuelle Mac OS-Maschine in VMWare
- Installieren Sie XCode
- Die Anleitung zum Swift für den Anfänger
- Die Anleitung zu Swift Function
- Die Anleitung zu Swift Closure
- Klasse und Objekt in Swift
- Die Anleitung zu Swift Enum
- Die Anleitung zu Swift Struct
- Programmierung für Team mit XCode und SVN
Show More