On Saturday, 15 September 2012 at 13:36:00 UTC, Maxim Fomin wrote:
On Saturday, 15 September 2012 at 12:43:22 UTC, Alex Rønne Petersen wrote:
But this being said, I agree that references being nullable by default is hurtful. It allows any object reference to have an invalid state even though in 99% of cases, that doesn't make sense. It's a giant hole in the type system that many new languages have gotten rid of very early (forcing the programmer to use explicit option/nullable types).

Are speaking about classes? Then how they can be initialized (except for null and other existing object)?

When you want it to be initialized with null, use a pointer. Else you can use something like this:

class AClass {
        this(BClass bclass = new BClass) {
                _class = bclass;
        }
        
        BClass _class;  
}

By the way, a pointer holds two pieces information:
1) If there is an object available
2) If so, the object itself

In most cases, you only need the second one and the if is redunant.

Reply via email to