Creating the instances of classes

The following lines create an instance of the Circle class named circle within the scope of a generatedCircleRadius function. The code within the function uses the created instance to access and return the value of its radius property. In this case, the code uses the let keyword to declare an immutable reference to the Circle instance named circle. An immutable reference is also known as a constant reference because we cannot replace the reference held by the circle constant to another instance of Circle. When we use the var keyword, we declare a reference that we can change later.

After we define the new function, we will call it. Note that the screenshot displays the results of the execution of the initializer and then the deinitializer. Swift destroys the instance after the circle constant goes out of scope because its reference count goes down from one to zero; therefore, there is no reason to keep the instance alive. Enter the following lines in the Playground after the declaration of the Circle class. The code file for the sample is included in the swift_3_oop_chapter_02_09 folder:

    func generatedCircleRadius() -> Double { 
      let circle = Circle(radius: 20) 
      return circle.radius 
    } 
     
    print(generatedCircleRadius()) 

The following lines show the results displayed in the Playground's Debug area after we execute the previously shown code. The following screenshot shows the results displayed on the right-hand side of the lines of code in the Playground:

    I'm initializing a new Circle instance with a radius 
    value of 20.0. 
    I'm destroying the Circle instance with a radius value 
    of 20.0. 
    20.0 

Note that it is extremely easy to code a function that creates an instance and uses it to call a method because we don't have to worry about removing the instance from memory. The automatic reference counting mechanism does the necessary cleanup work for us. The following screenshot shows the results of running the code in the Swift REPL:

Creating the instances of classes

The following screenshot shows the results of running the code in the web-based IBM Swift Sandbox:

Creating the instances of classes

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
52.14.62.197