一、初始化和清理
初始化对于程序很重要,很多程序会因为不正确的初始化出现错误,这样的错误在编码期间很难被发现,并且不恰当的清理也会带来类似的错误。对于java而已,java类的构造器就可以避免这类错误,构造器提醒程序员做初始化(没有正确的构造器调用,编译器是没法通过编译)。
java对域变量强制初始化比如:
class Peoper{
String str;
Peoper(){
System.out.print(str);//null
}
}
那么在构造器之前和构造器中初始化有什么区别呢:
public class InitStringDemo {
String str2="123";
String str1;
public InitStringDemo() {
System.out.println("---str2:"+str2+"----str1:"+str1);
str1="123";
}
}都是在使用前完成了初始化,保证程序运行的正常;而str1初始化了2次,一次str1=null,然后再到构造器中初始化赋值str1=“123”;
清理:在C或者C++中创建对象后都应该要在使用完后注销,不能让它一直保存在内存里,在java中,对于new的对象,会被自动销毁,所以也就给程序员减少了很多麻烦。
二 、访问权限的控制
为什么要访问权限控制呢? 很简单,我们在写代码时候不注意权限控制,当我们要修改程序时候,要是修改了一些代码,而客户端不希望修改这些代码,这样就带来了修改麻烦。我们把客户端使用的用public标示 ,而对自己内部使用的程序使用private标示,以后修改起来就方便了;再者,可以保护程序的安全性,很多私有的东西,不希望别人看见,那就关起来吧,提供一个接口给客户端使用,这就是权限的必要性。