java核心技术(8)第四章 类,中软国际java二面华为面试

本文探讨了Java编程中的核心概念,包括封装的重要性,如何保持对象状态的完整性,以及类之间的依赖、聚合和继承关系。强调了在使用对象时,必须先构造对象并指定其初始状态,同时提醒开发者在编写get方法时避免返回可变对象的引用,以防止意外修改。此外,还提到了Java编译的两种方式以及隐式参数this的使用。最后,讨论了final和static修饰符的作用,并给出了方法参数的注意事项。
摘要由CSDN通过智能技术生成

关键在于绝对不能让类中的方法直接方位其他类的实例域。程序仅通过方法与对象的数据交付。

这是提高重用性和可靠性的关键。

对象的所有实例域的值的集合就是这个对象的当前状态。(只能通过调用方法改变,如果不用通过调用方法就改变了状态,说明封装性遭到破坏)。

对象的行为即方法,状态影响行为,如不同状态订单,可进行操作不一样。

3、类于类之间的关系

1)依赖(uses-a)应尽量减少依赖,降低耦合

2)聚合(has-a) 即包含关系,如订单包含条目

3)继承(is-a)特殊与一般的关系,如程序员继承人类。

4、对象的使用:

要想使用对象,必须先构造对象,并指定其初始状态,才能对其进行操作(施加方法)。

一个对象变量并没有实际包含一个对象,而仅仅引用一个对象。

所以在写类的get方法时,不要返回引用可变对象。因为他们实际上引用的是同一个对象,如果在外部对这个返回的对象进行修改,那么类对象的属性也会被修改。

举个栗子:

Apple a = …;

Date produceTime =a.getProduceTime();

此时priduceTime 和a.produceTime引用同一个对象

如果改变produceTime,a.produceTime也会被改变。如:

produceTime.setTime(365000000);a.produceTime也会被改变

所以最好用clone,在A的getProduceTime()中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值