Java对象和类解析.docx

上传人:太** 文档编号:95712913 上传时间:2023-08-30 格式:DOCX 页数:11 大小:17.10KB
返回 下载 相关 举报
Java对象和类解析.docx_第1页
第1页 / 共11页
Java对象和类解析.docx_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《Java对象和类解析.docx》由会员分享,可在线阅读,更多相关《Java对象和类解析.docx(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Java对象和类作为一种面向对象语言。支持以下基本概念: 多态 继承 封装 抽象 类 对象 实例 方法 重载本节我们重点研究对象和类的概念。 对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的 状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。类:类是一个模板,它描述一类对象的行为和状态。下图中男孩女孩为类,而具体的每个人为该类的对象:编译这两个文件并且运行类,可以看到如下结果:C : javac Employee .javaC : vi EmployeeTest .javaC : javac EmployeeTest .javaC : java Em

2、ployeeTestName: James SmithAge: 2 6Designation: Senior Software EngineerSalary: 1000 . 0Name: Mary AnneAge: 2 1Designation: Software EngineerSalary: 5 0 0.0基础语法基本数据类型分类导航 服务端 数据库 移动端 教程开发工具. 网站建设中的对象现在让我们深入了解什么是对象。看看周围真实的世界,会发现身边有很多对象,车,狗,人等等。所有这些对象都有自己的状态和行为。拿一条狗来举例,它的状态有:名字、品种、颜色,行为有:叫、摇尾巴和跑。对比现实对

3、象和软件对象,它们之间十分相似。软件对象也有状态和行为。软件对象的状态就是属性,行为通过方法体现。在软件开发中,方法操作对象内部状态的改变,对象的相互调用也是通过方法来完成。中的类类可以看成是创建对象的模板。通过下面一个简单的类来理解下中类的定义:public class Dog(String breed;int age;String color;void barking( ) )void hungry( ) )void sleeping( ) )一个类可以包含以下类型变量: 局部变量:在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法 中,方法结束后,变量就会自

4、动销毁。 成员变量:成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化。成员变量 可以被类中方法、构造方法和特定类的语句块访问。 类变量:类变量也声明在类中,方法体之外,但必须声明为类型。一个类可以拥有多个方法,在上面的例子中:、和都是类的方法。构造方法每个类都有构造方法。如果没有显式地为类定义构造方法,编译器将会为该类提供一个默认构造方法。在创建一个对象的时候,至少要调用一个构造方法。构造方法的名称必须与类同名,一个类可以有多个构造方法。下面是一个构造方法示例:public class Puppypublic Puppy( ) public Puppy( String n

5、ame) 这个构造器仅有一个参数:name)创建对象对象是根据类创建的。在 中,使用关键字来创建一个新的对象。创建对象需要以下三步:声明:声明一个对象,包括对象名称和对象类型。实例化:使用关键字来创建一个对象。初始化:使用 创建对象时,会调用构造方法初始化对象。下面是一个创建对象的例子:public class Puppypublic Puppy( String name) 这个构造器仅有一个参数:nameSystem .out .println( Passed Name is : + name );)public static void main( String args) /下面的语句将创

6、建一个Puppy对象Puppy myPuppy = new Puppy( Htommy );)编译并运行上面的程序,会打印出下面的结果:Passed Name is : tommy访问实例变量和方法通过已创建的对象来访问成员变量和成员方法,如下所示:/*实例化对象*/ObjectReference = new Constructor();/*访问其中的变量*/ObjectReference . variableName;/*访问类中的方法*/ObjectReference . MethodName();实例下面的例子展示如何访问实例变量和调用成员方法:public class Puppyint

7、 puppyAge;public Puppy( String name) /这个构造器仅有一个参数:nameSystem .out .println( Passed Name is : + name ); public void setAge( int age ) puppyAge = age;public int getAge( ) + puppyAge );System . out . println( Puppy1 s age isreturn puppyAge;public static void main( String args) r创建对象*/Puppy myPuppy = ne

8、w Puppy( tommy );/*通过方法来设定age */myPuppy .setAge( 2 );r调用另一个方法获取age 7myPuppy .getAge();/*你也可以像下面这样访问成员变量*/System . out . println( Variable Value)编译并运行上面的程序,产生如下结果:Passed Name is : tommyPuppy1 s age is : 2Variable Value : 2源文件声明规则在本节的最后部分,我们将学习源文件的声明规则和 语句时,要特别注意这些规则。一个源文件中只能有一个类+ myPuppy .puppyAge );

9、当在一个源文件中定义多个类,并且还有语句一个源文件可以有多个非源文件的名称应该和类的类名保持一致。例如:源文件中类的类名是,那么源文件应该命名为。如果一个类定义在某个包中,那么语句应该在源文件的首行。如果源文件包含语句,那么应该放在语句和类定义之间。如果没有语句,那么语句应该在源文件中最前面。语句和语句对源文件中定义的所有类都有效。在同一源文件中,不能给不同的类不同的包声明。 类有若干种访问级别,并且类也分不同的类型:抽象类和类等。这些将在访问控制章节介绍。除了上面提到的几种类型,还有一些特殊的类,如:内部类、匿名类。包包主要用来对类和接口进行分类。当开发程序时,可能编写成百上千的类,因此很有

10、必要对类和接口进行分类。语句在 中,如果给出一个完整的限定名,包括包名、类名,那么编译器就可以很容易地定位到源代码或者类。语句就是用来提供一个合理的路径,使得编译器可以找到某个类。例如,下面的命令行将会命令编译器载入路径下的所有类import java . io . *;一个简单的例子在该例子中,我们创建两个类:和。首先打开文本编辑器,把下面的代码粘贴进去。注意将文件保存为。类有四个成员变量:、和。该类显式声明了一个构造方法,该方法只有一个参数。import java . io . *;public class EmployeeString name;int age;String design

11、ation;double salary;/ Employee类的构造器public Employee( String name) this .name = name;)/设置age的值public void empAge( int empAge) age = empAge;)/* 设置 designation 的值*/public void empDesignation( String empDesig) designation = empDesig;/*设置salary的值*/public voidempSalary( double empSalary) salary = empSalary

12、;)/*打印信息*/public void printEmployee( ) System . out . println( Name: + name );System . out . println( n Age: + age );System . out . println( Designation: + designation );)程序都是从方法开始执行。为了能运行这个程序,必须包含方法并且创建一个实例对象。下面给出类,该类实例化 个类的实例,并调用方法设置变量的值。将下面的代码保存在文件中。import java . io . * ;public class EmployeeTest

13、public static void main( String args ) /*使用构造器创建两个对象*/Employee empOne = new Employee( James Smith);Employee empTwo = new Employee(Mary Anne);/调用这两个对象的成员方法empOne .empAge(2 6);empOne . empDesignation( Senior Software Engineer);empOne . empSalary( 10 0 0);empOne . printEmployee();empTwo .empAge(21);empTwo . empDesignation( Software Engineer);empTwo . empSalary( 5 0 0);empTwo . printEmployee();

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 解决方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁