[[YYDog alloc]init]; [YYDog alloc ]; 区别 ?

YYDog *dog1 = [[YYDog alloc]init];
YYDog *dog2 = [YYDog alloc];
dog1.name = @"可可";
dog2.name = @"乐乐";
dog1.age = 2;
dog2.age = 2;

这2种创建对象方法有区别吗,有alloc就有在堆上分配空间吧,init 代表什么。
查看回复