- 1、本文档共61页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5章 Java面向对象程序设计;教学目的要求;本章内容 contents ;5.1 class 类;面向对象回顾(1)-基本思想;1. 对象的基本概念 对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。一个对象由一组属性和对这组属性进行操作的一组服务组成。 主动对象是一组属性和一组服务的封装体,其中至少有一个服务不需要接收消息就能主动执行(称作主动服务、或主方法)。
2. 类的基本概念?? ?类是具有相同属性和服务的一组对象的集合,它为属于该类的所有对象提供了统一的抽象描述,其内部包括属性和服务两个主要部分。在面向对象的编程语言中,类是一个独立的程序单位,它应该有一个类名并包括属性说明和服务说明两个主要部分。
3. 消息
消息就是向对象发出的服务请求,它应该包含下述信息:提供服务的对象标识、服务标识、输入信息和回答信息。服务通常被称为方法或函数。;面向对象回顾(2)-基本特性;同时,在类声明中还可以包含类的父类(超类),类所实现的接口以及修饰符public、abstract或final,这些内容将在后面的几节中分别介绍。
由类定义可知,类定义包括关键词class、类名和类的属性。类名是Java语言合法的标识符,类名一般具有一定的含义。
(1)类定义修饰符
类的说明性修饰符说明类的性质和访问权限,包括public、缺省修饰符、abstract、final。关于修饰符具体含义后面详细介绍。
(2)extends
extends说明类的父类,一般形式为extends〈父类名〉Java语言中,如果在类说明中无extends,则隐含地假设其父类为Java.lang.object类。;定义一个点类;5.1.1 类的定义;5.1.1 类的定义;5.1.1 类的定义;⑶方法名
成员方法名是Java语言合法的标识符,为了提高程序的可读性,成员方法名一般具有一定的含义。
⑷参数列表
成员方法的参数列表是由逗号分隔的类型及参数名组成,是可选项。类型可以是Java语言的任何数据类型。
⑸方法体
方法体是一个方法定义的主要部分,包含了所有实现方法功能的Java语言程序代码。在方法体中可以定义局部变量,它的作用域仅在方法体内,当方法被执行结束之后,该方法内部的所有局部变量也就失效了,局部变量不能与参数列表中参数名同名。方法体用“{}”括起来。 ;public class Li5_02{
public static void main(String args[]){
double k;
Li5_02 mj=new Li5_02();
k=mj.area(5);
System.out.println(k);
}
public double area(int r){//定义area方法,带有一个参数
final double PI=3.14;//定义常量PI,并赋初值3.14
return PI*r*r;//根据r的值,计算面积后,返回面积值
}
}
运行结果为:
78.5;5.1.1 类的定义;5.1.1 类的定义;5.1.2 对象的使用 ;5.1.2 对象的使用;5.1.2 对象的使用;5.1.2 对象的使用;//*定义一个Point类*
class Point{
public int x;//定义成员变量
public int y;//定义成员变量
//Point构造方法1,不带参数
public Point(){
this.x=0; //引用当前x
this.y=0; //引用当前y
}
//Point构造方法2,带两个参数
public Point(int x,int y){
this.x=x;//引用当前x
this.y=y;//引用当前y
}
};//*定义一个类Rectangle*
class Rectangle{
public int width=0;//定义成员变量
public int height=0;//定义成员变量
public Point origin;//定义成员变量
//Rectangle构造方法1,不带参数
public Rectangle(){
origin=new Point(0,0);
}
//Rectangle构造方法2,带一个参数
public Rectangle(Point p){
origin=p;
}
//构造方法3,带三个参数
public Rectangle(Point p,int w,int h){
origin=p;
width=w;
height=h;
}; //成员方法move1
public void move1(int x, int y){
文档评论(0)