1:对象是服务的提供者,程序本身提供服务,它是通过调用对象来实现的,这是在程序设计过程中一种很高的抽象,我们就要看 看哪些对象可以帮助我们完成任务。
2:对象虽然可以提供服务,但是不要让它试图做更多的事,这样既简缩,又有利于代码的复用。
3:访问控制存在的两个原因
a.不想让客户端程序员触及到他们不想让他们触及的部分,保证隐私性。
b.类库设计者可以改变内部的实现方式,而不至于影响到客户端程序员。
4:代码的复用可以有两种,一种是代码的组合,即本对象中含有其他对象的引用,另外一种是继承,构造新类的时候首先想到组 合,因为更加灵活。
5:运行时多态:父类引用指向子类对象,当向对象发送消息时,直到运行时才能确定下来具体执行哪段代码。
6:单根继承的设计出发点:
a.所有的类都有共同的功能,所有的对象都可以在容器中创建,Java1.5之前容器中参数都是Object。
b.保证了所有对象都有类型信息,在系统级操作例如异常处理中报错显得很重要。
7:泛型即是参数化类型,我们可以在容器中用<>指定具体的类型,避免了向上转型为Object。
8:Java垃圾回收机制可以为我们自动回收不使用的对象,C++需要自己手动销毁不用的对象,这样就有了各自的优势:Java编写更容易,C++可以及时的处理不用的对象,运行的速度也更快。
9:并发编程要面对的问题,如何起多个线程更好的利用资源,如何对共享资源进行锁定与解锁。