Time for action – Declaring some fields
Now, imagine that we want to create a class named Person
. Its instances should have a public name field, a private age field, and the class should have a static and public count field.
The first thing we can do is to write it in the following way:
class Person { public var name : String; //This one is public var age : Int; //This one is private public static var count : Int = 0; //This one is static and initialized at 0 }
On the other hand, we can write it by implementing the
Public
interface, as follows:class Person implements Public { var name : String; //This one is public private var age : Int; //This one is private static var count : Int = 0; //And this one is public }
What just happened?
These two solutions will result in exactly the same thing:
Without implementing Public: When a class does not implement Public, all of its fields are private by default. That's why we have to explicitly write that the name and count properties...