java复习系列之对象和类

        这是复习java的第一篇文章,这边主要是复习java的对象和类相关的知识点。有关于java的简介,比如历史介绍(比如java之父James Gosling等人怎么创造java)、特性(简单性、面向对象、网络技能、健壮性、安全性、可移植性、高性能、多线程、动态性等等)以及开发环境的搭建等相对简单并且和实际开发作用不是很大的问题,这里就不在一一介绍了,网上随便一搜就能找到很详细的介绍;另外,关于Java的基本程序设计结构,这里也不打算仔细介绍,毕竟还是和其他语言差不多,比如8个基本数据类型(byte、short、int、long、char、float、double、boolean)、变量、运算符、字符串、控制流程、大数值、数组等等就不在这里讨论了。

Java 对象和类

类:类是构造对象的模板。

对象:对象是类的一个实例。

简单理解:人可以理解成为是类,每一个具体的人是一个个的对象,当我们说到人的时候,不能说一定是谁,有可能是张三,有可能是李四,还可能是王二;但是对于张三来说,他是一个人,这是毋庸置疑的。

Java 类

现实中的类可以包含很多东西,比如名字、长相特征、行为活动等,Java种的类也具有属性和行为,属性体现为类中的变量,行为是通过类中的方法来体现的。一个类可以包含的变量类型有以下三种:

  • 局部变量:定义在代码块助攻的变量,代码块可以是方法(包括构造方法)、语句块。这种变量的声明和初始化都是在代码块中,所以会随着方法的结束而销毁
  • 成员变量:定义在类中、方法体之外的变量,它的初始化是在创建对象的时候
  • 类变量:定义在类中、方法体之外的变量,并且是被static关键词修饰。

类之间的关系

类之间常见的关系有三种:

  • 依赖(uses-a):一个类中的方法操作了另一个类的对象,这种称为依赖,像这种的耦合度,我们在开发中是要尽量减少的,耦合度越小越好。
  • 聚合(has-a):是一种整体与部分的关系,一个类的对象中包含了另一个类的对象,可以具有各自的生命周期,好比公司和员工的关系,彼此各自具有自己的生命周期
  • 继承(is-a):一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力。
  • 组合(contains-a):也是一种整体与部分的关系,但是是一种强的聚合关系,有着共同的生命周期,好比人的大脑和人的关系一样。

构造函数

构造函数是一个和类同名、没有返回值、可以有0个或者多个参数的方法。

一个类当没有提供任何构造函数的情况下,系统会默认提供一个没有参数的构造函数,只要在编写类的时候提供了构造函数,那么系统将不会提供默认的构造函数。构造函数和其他函数的一个很大的区别是,构造函数总是伴随着new操作是被调用的,并且不能通过一个已存在的对象去调用构造函数。一个函数可以有多个构造函数。

Java 对象的创建

最常用的方法是试用关键字new调用构造函数来创建一个对象,例如定义好了一个Person类,需要创建对象可以:Person p = new Person();

另外还可以使用其他的方法来创建对象,比如可以使用反射技术,利用newInstance()方法来创建一个实例。

如果该类已经序列化的,即已经实现了Serializable接口,可以使用流来创建一个对象;

当然使用clone也是可以的。


关于对象的其他操作,比如访问实例变量和方法,这里就暂时不讨论了。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值