Swift初级(四)

Swift初级(四),第1张

概述/*******************结构体**********************/ //1.声明一个结构体 struct Rect {     //声明结构体变量(对象)的属性(存储属性)     var x:Float     var y:Float     var width:Float     var height:Float     //声明结构体属性     //注意:需要使用


/*******************结构体**********************/

//1.声明一个结构体

struct Rect {

//声明结构体变量(对象)的属性(存储属性)

var x:float

var y:float

var wIDth:float

var height:float

//声明结构体属性

//注意:需要使用static关键字修饰,

static var description:String?

//计算属性(专门用于计算其他属性,并不存储值)

var centerX:float{

//setter方法

set{

x = newValue

}

//getter方法

get{

return x + wIDth/2

}

}

var centerY:float{

get{

return y + wIDth/2

}

}

//声明法方

//声明一个结构体对象(结构体变量)方法y

func info(){

print("x:\(x) y:\(y),wIDth:\(wIDth),heigth:\(height) ")

}

//声明结构体方法[类似于类中的类方法]

static func info1(){

print("这是一个结构体方法")

}

}


//1.根据结构体类型(Rect),创建结构体对象(结构体变量)

var rect1 = Rect(x: 0,y: 0,wIDth: 100,height: 100)

//2.如果结构体对象时常量,内部的属性是不允许修改的

//访问结构体对象的属性(x.y.wIDth.height

rect1.x = 20

print(rect1.x)

//访问结构体属性

Rect.description = "我是结构体属性"

print(Rect.description!)

//访问结构体对象的计属性

rect1.centerX = 100//在调用centerx中的setter方法

let value = rect1.centerX //在使用center中的getter方法

//使用结构体对象方法

rect1.info()

//使用结构体方法

Rect.info1()

//



/*********************类(class**************************/

/*

class Person {

var name:String?

var age:Int?

//构造方法

init(name:String,age:Int){

self.name = name

self.age = age

}

}

//创建一个Person对象

var p1:Person = Person(name: "王大",age: 23)

//访问类中的属性

print(p1.name!)


*/


class Person{

//声明对象属性(存储属性)

var name:String?

var age:Int?

//声明类属性

static var introduce:String?//(存储属性)

//声明计算属性(可以是,类,结构体,枚举)

var number:Int{

get{

return self.age!

}

set(value){//这种写法表示在调用numberset方法时,传过来的参数赋值给value

age = value//切记:set方法中不能使用self。属性,会造成死循环。

}

}

//声明类方法

//static修饰的类方法,不能被子类重写,class修饰的类方法,可以被子类重写

static func sayHi(){

print(introduce)

//类法方中不能使用对象属性,只能使用类属性

}

class func sayHi2() {

print(introduce)

}

//声明构造方法

init(name:String,age:Int){

self.name = name

self.age = age

}

init(name:String){

self.name = name

}

//声明对象方法

func sayHello(){

print("Hello,我是对象方法—_")

}

}

//继承

class Student:Person{

//重写父类的类方法

overrIDe class func sayHi2(){

print("我是Student类。重写了父类的类方法")

}

}

//

let person = Person(name: "李四",age: 25)

person.sayHello()//使用对象fangfa

Person.sayHi2()//使用的是类方法

Student.sayHi2()//使用的Student中重写父类的那个类方法


//创建Student对象

let student:Student = Student(name: "小王",age: 23)

总结

以上是内存溢出为你收集整理的Swift初级(四)全部内容,希望文章能够帮你解决Swift初级(四)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1082916.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-27
下一篇2022-05-27

发表评论

登录后才能评论

评论列表(0条)

    保存