所有可覆盖的方法都是生命周期方法

时间:2016-04-16 08:59:27

标签: ios objective-c oop

我关注的是以下内容,

如果我使用某种方法创建一个类并继承它,那么哪些方法称为lifecycle方法。

所有可覆盖的方法都是生命周期方法吗?它在哪个类别下降,例如OOPS,OOAD

示例: - 在iOS viewDidLoad中,lifecycle方法是didReceiveMemoryWarning,但treeapply <- function( tr, ## tree fl=function(b,i,e) invisible(), ## leaf node function fi=function(b,i,e) invisible(), ## internal node function init=NULL, ## initial buildup object value or function b=if (is.function(init)) init(tr) else init ## buildup object ) unlist(recursive=F,lapply(seq_along(tr),function(i) { e <- tr[[i]]; if (is.list(e)) treeapply(e,fl,fi,b=fi(b,i,e)) else fl(b,i,e); })); 不是。 如果它不被称为生命周期方法,它被称为可覆盖的方法吗?

2 个答案:

答案 0 :(得分:0)

方法不具有生命周期法或可覆盖法等类型。 UIViewController根据其加载或出现等行为,拥有自己的生命周期。

重写是继承的概念。所以没有生命周期或可覆盖的标准类型。从viewController初始化到Disappearance调用的方法位于lifecycle的{​​{1}}下。

答案 1 :(得分:0)

当我们想要从超类中为我们的方法添加一些特性时,我们使用覆盖。 如果您创建一个类并将UIViewcontroller实现为超类.UIViewController具有预定义方法,例如viewDidload,viewWillAppear,viewDidDisapear等。如果要为超类方法添加一些功能,则应使用覆盖前缀。实现超类方法并添加代码时使用覆盖。 例如

class Student{

   func address(){
    var add1 = "drn"
   }

   func phoneNumber(){
    var no = 9806569690
   }
 }

//创建另一个类并将student添加为超类

 class Classroom: Student{

  //here address is method from      superclass student so i am using override prefix

   override func address(){
    var add2 = "ktm"
   }
 }

我正在用手机打字。所以我不能给你很好的例子。