java 对象与类

要使用面向对象编程必须要理解面向对象的思想。面向对象编程与面向过程编程不同的地方在于,面向对象总是把数据和操作数据的方法放在一起,所有与数据相关的操作都在当前类中提供。相似之处在于面向对象编程的操作数据的方法内部的实现使用的时面向过程编程方式。不要认为面向过程和面向对象是绝对分裂的,其实我认为面向对象包含面向过程。例子就是C++兼容C。

面向对象的三大特征:封装,继承,多态。封装是指对数据的封装,继承是扩展和维护的需要,多态是体现共性当中个性的方式。


要想使用OOP,一定要弄清楚对象的三个主要特征:
对象的行为(behavior):可以对对象施加那些操作,或者对对象施加那些方法?
对象的状态(state):当施加那些方法时,对象如何响应?
对象的标示(identity):如何识别具有相同行为与状态的不同对象?

类之间的关系最常见的有:依赖,聚合,继承。

看下面的例子:
Date birthDate=new Date();
        Date date=birthDate;
date并没有实际包含一个对象,它仅仅只是引用了一个对象。当birthDate修改对象中的内容的时候,date也会随之改变。

要提到类中的属性,那么要进行安全访问就要设置get/set方法了,它们的正式名称是访问器方法/更改器方法。但是在交流中还是用getter/setter方法称呼。

在自定义类的时候,通常需要考虑这个类是用来干什么的,封装有什么样的数据,提供什么样的数据操作方法。如果不知道这个类用来干什么的,就不要创建类,尝试在原有的类中进行维护。如果不知道类中要封装什么样的数据,就需要查看需求和流程,确定封装的数据。至于提供什么样的方法,就需要看这个类是用来干什么的,其他需要它的类用它来做什么。

注意:当类中一个方法的参数名和类的属性名一样的时候的,要想获取类中属性名的引用就需要使用this.属性名来引用它。否则程序不会报错,但是对属性名的操作都没有任何的落实。原因是因为程序的作用域问题。

java中类的析构方法是finalize(),使用的环境是释放稀缺的资源,但是不确定什么时间释放掉资源。java有自己的垃圾回收机制,因此这个方法不要过度的依赖。它可以为任何的类添加这个方法。


类的设计技巧
1.一定将数据设为私有的
2.一定要对数据初始化
3.不要再类中使用过多的基本数据类型
4.不是所有的属性都需要独立的getter/setter方法的
5.使用标准格式进行类的定义
6.将职责过多的类进行分解
7.类名和方法名要能够体现出他们的职责





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值