任务3.1 创建员工类
3.1.1 任务要求
员工类属性有姓名(属性名为name),工号(属性名为ID),职位(属性名为position),工资 (属性名为salary),入职时间:年(属性名为year),入职时间:月(属性名为month),入职时间:日(属性名为day)。掌握类的定义,以及类中的属性和方法的编辑、重载。
3.1.2 知识准备
1)面向对象的基本概念
面向对象程序设计又称为OOP(Objiect-orientend Programming),是目前占主流地位的一种程序设计技术,其思想主旨是“基于对象的编程”。又因Java是一种完全面向对象的语言,面向对象编程的四个重要特征就是“封装”、“抽象”、“继承”和“对态”。
(1)类与成员
把众多的事物归纳、划分成一些类是人在认识客观世界时经常采用的思维方法。分类的原则是抽象。
成员变量又称为属性,用来描述对象的状态,成员方法用来描述对象的行为。
(2)对象
在程序设计中,对象(Object)是指具有属性和方法的实体。
(3)类的定义
类是对客观世界事物进行抽象后得到的一种复合数据类型,它将一类对象的状态和行为封装在一起。创建一个新类,就是创建一种新的数据类型;而实例化一个类,就得到一个该类的对象。
其中类的定义包括两部分的内容:类声明和类体。
(4)成员变量
成员变量也称属性,是事物静态特征的抽象。成员变量分为两种:类的成员变量和对象的成员变量(又称实例变量)。
类成员变量用来描述类的状态,被该类的所有对象所共享,既没有创建类的对象时,这些变量的存在,如员工类9的总人数属性是类成员变量。
任务3.2 创建员工对象
3.2.1 知识准备
在面向对象的程序设计语言中,具有共同属性的一组对象可以用一个“模板”来 描述,这就是类。类就是一种抽象数据类型,是一组数据和方法的集合,它的作用就是生成对象。一旦定义了所需的类,就可以构造该类的对象了。创建类的对象也称为类的实例化。
(1)对象的声明
对象的声明格式如下:
类名 对象名;
使用前面创建的员工类来创建对象为:
Employee el;
上述语句声明了 Employee 类的对象el。
(2)对象的初始化
声明要创建一个对象的实例物理拷贝,并把对于该对象的引用赋给该变量。
(3)引用对象
在创建了类的对象后,就可以对对象的各个成员进行访问,进行各种处理。
(4)销毁对象
Java需要程序员用new运算符创建所需要的对象,而不需要显式地销毁它们。Java的垃圾回收机制自动判断对象是否在使用,并能够自动销毁不再使用的对象,收回对象所占的资源。
(5)对象复制
同一个类可以声明多个对象,多个对象之间可以相互复制。
任务3.3 隐藏员工对象属性
3.3.1 知识准备
1)包
(1)包的概念
包是Java提供的一种区别类名字空间的机制,是类的组织方式。具体而言,包是一组相关的类和接口的集合,Java的每个类都包含在相应的某个包中。
(2)包的定义
要创建一个包非常容易,通过关键字package声明。package语句必须作为Java源文件的第一条语句,用来指明该源文件定义的类所在包。
(3)包的使用
定义包的目的是为了有序组织Java类和接口,以实现对类和接口更加有效地使用。
(4)创建包等级
用圆点“.”将每个包名分隔就能形成包等级。
2)类的封装
(1)没有对类中的成员变量和类中成员方法设置访问权限。
(2)直接方式访问成员变量。
(3)在类的定义中设置对象中的成员变量和方法进行访问的权限;
(4)提供一格统一供其他类引用的方法;
(5)其他对象不能直接修改本对象所拥有的属性和方法。v