面向对象程序设计基础详解

  • 格式:ppt
  • 大小:1.05 MB
  • 文档页数:34

下载文档原格式

  / 34
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
构造器可以有0个、1个或者多个参数。
(1)无参数的构造器
没有构造器——使用默认的构造器(没有参数,没 有方法体)
如果使用没有参数的构造器,则创建的对象具有相
同的初始值
class BirthDay{
int year,month,day;
BirthDay(){
Baidu Nhomakorabea
year = 2015;
month = 9;
3.2 方法
方法的基本语法:
<修饰符> <返回类型> <名称>([<参数表>]){
[<语句>]
}
<名称>可以是任何合法的 标识符,但限制使用那些 已经在使用的名称。
<修饰符>是可选项,并可有很多不 同的修饰符,包括public、 protected和private等。public访问 修饰符表明可从其他代码调用该方 法。private表明方法只能在由该类 中其他方法调用。
第3章
面向对象 程序设计 基础
2015-9-15
3.1 类与对象
3.1.2 类的定义和使用 1.类的定义
Java类的基本语法: <修饰符> class <类名>{
[<属性声明>] [<构造器声明>] [<方法声明>] }
<类名>可以是任何合法的 标识符,并且是所声明类 的名字。
有几种可使用的<修饰符>, 但现在只使用public,声明 类可被任意访问。
3.1.4 基本类型与参考类型变量的区别 1. 基本数据类型
int x,y; x=10; y=20; y=x;
3.1.4 基本类型与参考类型变量的区别 2. 参考数据类型
BirthDay Tombth,Marybth; Tombth=new BirthDay(); Marybth=new BirthDay(); Tombth.year=1999; Tombth.month=9; Tombth.day=10; Marybth.year=2000; Marybth=Tombth;
day = 15;
}
}
(2)带参数的构造器
class BirthDay{
int year,month,day;
BirthDay(int y,int m,int d){
}
year = y; month = m; day = d; }
class BirthDay{ int year,month,day; BirthDay(int year, int month,int day){ this.year = year;
public static void main (String argsp[]) {
BirthDay Tombth,Marybth;
Tombth=new BirthDay();
Marybth=new BirthDay();
Tombth.year=1999;
Tombth.month=9; Tombth.day=10;
this.month = month;
this.day = day;
}
}
3.4.2 构造器的使用
不能由编程人员显式调用。
在创建一个类的新对象的同时,系统会自动调用该类的构造 器为新对象初始化。
构造器只能和new运算符一起使用。
格式:
请看例3-10
类名 对象名
=new 构造器名称(成员变量的初始值)
默认构造器不带参数 默认构造器函数体为空
不必编写构造器就能使用new Xxx()创建 对象实例
找错误?
class Person{
private String name = "model";
private int age=20;
private double height = 1.7;
请看例3-3 请看例3-4
3.2.3 方法的重载
要构成方法的重载必须满足如下条件: (1)重载的方法在同一个类中,方法名相同 (2)方法的参数类型、个数、顺序至少有一个不同
修改例3-3
3.3 封装
class BirthDay {int year,month,day;}
public class BirthTest{
容易产生问题
...}}
3.3 封装
实现封装的步骤 (1)修改属性的可见性,如private修饰重要的成
员变量 (2)创建访问属性的方法,如set、get方法等 (3)在方法中,加入属性的存取限制
3.4 构造器
3.4.1 构造器的特点
构造器的基本语法: <修饰符> <类名>([<参数表>]){ [<语句>] }
3.4.1 构造器的特点
构造器作用:完成类对象的初始化工作
构造器的名称必须与类名相同 构造器没有返回值并且不可被继承 一般将构造器的修饰符声明为public 构造器中不能有return语句
3.4.1 构造器的特点
参数表与方法声明中的一样。可以象方法一样向构 造器传递参数。
(2)如果一个源文件中各个类前面都没有public修饰符修饰, 源文件主名可以任意取。
(3)如果一个源文件中某个类前面有public修饰符,则文件 名必须与public修饰的类同名,但一个源文件中最多只能 有一个类被public修饰。
(4)对于可以独立运行的Java Application程序,在命令 行中通过 “java 主类名”执行,这里主类是包括main() 方法的类,该方法是程序的入口,且类名后不能带后缀 “.class”。
3.4.3 构造器的重载
一个类可以有多个构造器,叫做构造器的重载。 条件(满足其一)
参数的个数不同 参数的类型不同
请看例3-11
3.4.4 多个构造器的相互调用
在一个构造器中只能通过this关键字来调用重载的另一个构造器
请看43页例子
默认构造器
每个类至少有一个构造器。 如果不编写构造器,则自动添加默认构造器:
类的正文声明了与类相关的 数据属性、构造器和方法的 集合。
BirthDay类
class BirthDay{ int year,month,day;
}
2.类的使用
定义某变量为该类型 创建对象:new 类名() 赋值 成员变量的使用
请看例3-1
3.1.3 源文件构成及命名
(1)一个程序中由一个或多个类构成,这些类可以放在同一 个源文件中,也可以放在不同文件中,编译后每个类都会 对应一个class文件,该class文件主名与类名相同。