您的位置:网站首页 > Java教程 > 正文

java程序设项目教程项目三ppt

类别:Java教程 日期:2017-9-15 13:44:52 人气: 来源:

  1.本站不该用户上传的文档完整性,不预览、不比对内容而直接下载产生的问题本站不予受理。

  项目三 ATM取款管理系统 中国人民大学出版社 技能目标 完成ATM取款机的服务功能,为用户提供存款、取款、余额查询、修改密码、查看用户信息等服务。 知识目标 理解类和对象的概念; 掌握类的定义及对象的创建; 掌握对象的使用; 掌握类的封装、继承和多态; 理解抽象类的定义并学会使用抽象类; 掌握接口的声明及实现方法; 掌握包的定义及使用的基本方法; 项目任务 开发一个ATM 取款机管理系统,该系统的主要功能是用户输入卡号、密码通过验证后,就可以实现存款、取款、余额查询、修改密码、查看用户信息等操作。 任务一 银行卡类的实现 到银行来开户,银行要分配给用户一张银行卡,用卡号来唯一标示这张银行卡。 class Card { String cardNumber=null; //构造方法 Card() { } void setCardNumber(String number) { cardNumber=number; } String getCardNumber() { return cardNumber; } } 相关知识 1、基本概念 面向对象程序设计是一种全新的程序设计,它的关键是将数据及对数据的操作整合在一起,形成一个相互依存、不可分割的整体——对象。对相同类型的对象进行抽象和处理,可以对结构复杂而又难以用以前方法描述的对象,设计出它的类。面向对象程序设计就是设计和定义这些类,定义好的类可以作为一个具体的数据类型进行类的实例化操作。通过类的实例化操作,就可以得到一系列具有通用特征和行为的对象。下面就来学习类和对象的基本概念及类的基本特征。 2、类 (1)什么是类 类是对一个或几个相似对象的描述,是具有相同属性和方法的一组对象的集合,它把不同的对象具有的共性抽象出来。类是同一类对象的原型,对象是由类创建的。类和对象是面向对象程序设计的两个最基本的概念,类是对象的抽象和描述,对象是类的实例化。 在面向对象程序设计中,类(class)是既包括数据又包括作用于数据之上的一组操作的封装体。类中的数据称为变量,类中对数据的操作称为方法。变量反映类的状态和特征,方法表示类的行为能力。 (2)定义类 类的定义语法格式: [修饰符] class 类名 [extends 父类名] [implements 接口名序列] { // 类主体 } 说明: ①“修饰符”通常为访问控制符、特征说明符。可以使用的修饰符有 public、final、abstract。 ②?“class”是定义类的关键字,[ ]中的内容为可选内容。 ③“类名”要符合标示符的命名规范、体现类的功能,习惯上首字符大写。 ④?“extends 父类名”表示该类继承了一个类,父类名指明被继承的类名称。 ⑤“implements 接口名序列”表示该类所实现的接口,接口名序列指明该类要实现的一个或多个接口的名称,若实现多个接口则用逗号分隔。 ⑥“类主体”是类设计的主体部分,一般包括变量和方法。 变量的定义格式为: [修饰符] 数据类型 变量名[=初值]; 方法的定义格式为: [修饰符] 返回值类型 方法名(参数列表) { //方法体 } 3、对象 (1)什么是对象 现实世界中,对象(object)是具有某种特征和行为的结合体,任何事物都可以称为对象。 在面向对象程序设计中,对象是类的实例(instance),对象与类的关系就像上一章学过的变量与数据类型的关系一样。对象使用数据和方法描述它的状态和行为,一般通过对象的变量描述其状态,通过对象的方法实现其行为。 类是一种数据类型,对象是用来描述客观事物的一个实体,类是对象的模板,对象是类的实例化。当用一个类创建一个对象时,该对象就是这个类的一个实例。 (2)创建对象 在Java中,创建对象包括声明对象和为对象分配内存空间两部分。 声明对象格式为:类名 对象名; 例如:Circle c1; 为对象分配内存空间要使用new运算符和类的构造方法。 格式为:对象名=new 类名([参数列表]); 例如:c1=new Card(); 在实际应用中,经常将声明对象和为对象分配内存空间合并为一步执行。 格式为:类名 对象名=new类名([参数列表]); (3)对象的使用 创建对象的过程就是为对象分配内存空间的过程,一个对象一旦拥有了自己的内存空间,它就可以调用创建它的类中的方法和使用自己的变量。要想使用对象还必须通过运算符“.”来对对象的变量和方法进行访问。 格式为:对象名.变量名 对象名.方法名([实际参数列表]) 说明: ①对象可以用“.”运算符访问其变量和方法,但访问的这些变量和方有一定的。如例题中的Circle类,其中radius被定义为私有的变量。所有在例题中的CircleArea类中就不能使用c1.radius=10;和c2.radius=50;语句来赋值。具体访问权限见任务二访问权限控制符部分。 ② 调用有形式参数的方法时,需要用实际参数替换方法中的形式参数,实际参数的个数、类型及顺序必须与形式参数一致。调用无形式参数方法时不需要实际参数,但调用方法名后的()不能省略,它是方法调用的标志。 ③类与实例的区别。 类,在Java的类设计中,如果用修饰符static声明它的一个,则该就被称为类,也成为静态。类包括类变量和类方法。如果static用来修饰变量,则该变量称为类变量,在访问时可以用“类名.变量名”的形式进行访问。如果static用来修饰方法,则该方法称为类方法,在调用时可以用“类名.方法名(参数列表)”进行调用。并且在类方法中只能使用类变量,否则会产生错误。类可以通过类名直接访问,也可以通过对象来访问。 实例是不通过修饰符static声明的,包括实例变量和实例方法,只有创建对象之后才可以访问,通过对象才能访问实例变量和实例方法。 任务二 用户信息类的实现 用户来银行开户,银行分配给用一张银行卡后,还要记录用户的相关信息,如姓名、性别、年龄等。 class User { private String userName=null; private String =null; private String age=null; private Card card=new Card(); //构造方法rName=userName; this.=; this.age=age; this.card=card; } //访问变量的普通方法 public void setUserName(String userName) { this.userName=userName; } 。。。。。。。 public Card getCard() { return card; } public static void main(String[] args) { Card card1=new Card(); card1.setCardNumber(123456789); User user=new User(张三,男,20,card1); System.out.println(/**User name is: +user.getUserName()+**/); System.out.println(/**Sex is: +user.getSex()+**/); System.out.println(/**Age is: +user.getAge()+**/); System.out.println(/**Card number is: +user.getCard().getCardNumber()+**/); } } 相关知识 1、访问权限控制符 访问控制符是一组限定类、类内部的属性和方法能否被这个类以外的其它类访问和调用的修饰符。类的访问控制符有public和缺省(friendly)两个情况,它的使用将在后面包的使用中。属性和方法的访问控制符有四个,分别为public、private、protected、friendly,在通常情况下没有修饰符修饰的时候缺省为friendly类型。 java中类的限定词的作用范围比较 2、封装 面向对象的另一个重要的特征就是封装。在本节前面的例子中类的属性和方法没有设置访问,这种方式使得类中或类之外访问类没有区别,都可以任意修改类中的,调用类中的方法对数据进行操作,是对象具有潜在的不稳定状态。因此我们希望有一个更好的符合面向对象程序设计思想的解决办法,这就是类的封装原则。在一个类中定义的属性由该类自身进行操作,不希望别的类对类中的属性进行直接操作,而是通过声明一些公有的方法提供给其它类来调用,达到访问类中属性的目的。 封装的目的: ① 隐藏类的实施细节。 ② 用户通过接口去访问数据。 ③ 增强代码的可性。 3、this应用 在User类种 多次用到了this 关键字,下面对它做一下介绍 1)当方法中传递的参数与类的属性重名的时候,使用this来区分类的属性和方法中同名的局部变量。 2)方法的返回值是当前类的对象的时候,需要使用this关键字。 3)定义类的时候,如果写了多个构造方法,经常会在一个构造方法的第一条语句使用this()调用它前面定义好的构造方法,以免出现重复代码。 任务三 不同类型的银行卡的实现 用户使用的银行卡有不同的类型,如普通银行卡、信用卡、医保卡等,下面实现银行卡的分类。 class CommonCard extends Card { } class Curecard extends card { } final class CreditCard extends Card { private double money=0.0; public double getMoney() { return money; } public void setMoney(double money) { this.money=money; } } 相关知识 1、继承 继承根据基础类创建具有特殊属性和行为的新类。由继承而得到的新类称为子类,被继承的基础类称为父类。子类继承父类的属性和行为并根据需要增加自己的状态和行为。子类和父类的关系如图 。 (1)子类的创建 语法格式如下: class 子类名 extends 父类名 { 类体 } 子类继承了父类的哪些 ①子类可以继承父类的属性,包括实例变量和类变量。 ②子类可以继承父类除构造方法以外的方法,包括实例方法和类方法。 ③子类可以重定义父类。 子类不能继承父类的构造方法是因为父类构造方法创建的是父类对象,子类必须定义自己的构造方法,创建子类自己的对象。 (2)子类的上传型对象 所谓上转型对象是指有父类A与子类B,用父类A声明的句柄指向子类B生成的对象,通过父类的句柄调用子类对象,这种情况称为上转型对象。 对象的上转型对象的实体是子类负责创建的,但上转型对象会失去原对象的一些属性和功能。 ①上转型对象不能操作子类新增的变量与方法。 ②上转型对象可以操作子类继承或重写的变量与方法。 ③如果子类重写父类的某个方法后,通过上转型对象调用的方法一定是调用了重写的方法。 2、final的使用 final修饰符可以修饰类以及类的。被final修饰的成为最终类,它不可以再被继承生成子类。被final修饰类的属性称为常量,它的值在程序的执行过程中被初始化后就不可改变。被final修饰的方法称为最终方法,是不可以被当前类的子类重新定义的方法,子类只能使用从父类继承来的被final声明的方法,不可以覆盖它。 知识拓展 1、 抽象类 (1)定义抽象类 Java语言中,用abstract修饰的类称为抽象类,用abstract修饰的方法称为抽象方法。 定义抽象类的格式如下: abstract class 类名 { 类体 } 定义抽象方法的格式如下: abstract 返回值类型 方法名([参数]) 定义的抽象方法只有声明而无具体实现。 (2)抽象类的使用 抽象类在使用的使用时通过类的继承机制,定义子类来实现抽象类中的抽象方法,从而来使用抽象类。 关于抽象类和抽象方法的一些:抽象类不一定要包含抽象方法,但有抽象方法的类一定是抽象类。一个类继承了抽象类,要实现抽象类中的所有的抽象方法,才能够进行实例化。若子类没有实现抽象类中的所有抽象方法,则子类也必须声明为抽象类。 2、接口 (1)接口的定义 “intece”(接口)关键字使抽象的概念更进了一层,我们可以想象为一个“纯”抽象类,就是一组具有特定意义的静态常量和抽象方法的集合。 创建接口的语法如下: [修饰符] intece 接口名 [extends 父接口列表] { [修饰符]类型 属性名=值; 返回值类型 方法名(参数列表); } 说明: ① 修饰接口的修饰符只有public和默认修饰符两种。 ② 接口可以是多重继承。接口只能继承接口,不能继承类。 ③ 属性定义时必须赋初值,是常量。属性性前修饰符时默认该属性由final、static修饰。 ④ 接口中的方法必须是抽象方法。 与类的继承类似,接口也可以继承,一个接口可以继承多个接口。利用继承技术,可方便地为一个接口添加新的方法声明,也可以将几个接口合并成一个新接口。在这两种情况下,最终得到的都是一个新接口。 (2)接口的实现 接口的定义仅仅是定义了行为的协议,没有定义履行接口协议的具体方法。这些方法的真正实现是在继承这个接口的各个类中完成,要由这些类来具体定义接口中各抽象方法的方法体,以适应某些特定的行为,因而在Java中,通常把对接口功能的实现称为实现接口。 实现接口的语法如下: class 类名 implements 接口名[,接口名] 说明: ① implements是一个类实现接口的关键字,一个类可以实现多个接口,接口之间用逗号进行分割。 ② 如果实现接口的类不是abstract修饰的抽象类,则在类主体中必须实现接口列表中的所有接口的所有抽象方法。 ③ 一个类在实现接口的抽象方法时,必须显式地使用public修饰符,否则将在编译时,提示错误。 (3)接口回调 接口回调把用接口声明的句柄指向实现这一接口的类创建的对象,那么该句柄就可以调用被类实现的接口中的方法,接口回调也是多态的一种表现形式。 任务四 工具类的实现 取款机管理系统,需要给用户提示信息,用户根据提示信息进行操作。而取款机需要根据用户的输入信息,启动相应的程序。用工具类把用户常用的输入操作和反馈给用户的提示信息组织到一块。 import java.io.*; import java.util.*; class Tools{ //MSG提示信息显示 public static void show(String msg) { 。。。。 } //显示银行卡信息 public static void show(Card card) { 。。。。。。。。。。 } //显示用户信息 public static void show(User user) { 。。。。。。。。。。。 } //显示账户信息 public static void show(Acount acount) { 。。。。。。。。。 } //显示提示用户操作的信息 public static void showServerInformation() { 。。。。。。。。。。 } //从键盘上读取一个整数; i=in.nextInt(); }catch(Exception e){ System.out.println(Exception when read String from the keyboard.); inputString(); } return i; } //从键盘上读取一个实数 public static double inputDouble() { double d=0; Scanner in=null; try{ in=new Scanner(System.in); d=in.nextDouble(); }catch(Exception e){ System.out.println(Exception when read String from the keyboard.); inputString(); } return d; } //从键盘上读取一个字符串 public static String inputString() { String s=null; Scanner in=null; try{ in=new Scanner(System.in); s=in.nextLine(); }catch(Exception e){ System.out.println(Exception when read String from the keyboard.); inputString(); } return s.trim(); } } 相关知识 1、多态 多态的表现形式主要有方法的重载和方法的覆盖,对象的上传型对象和接口的回调也是多态的表现形式。 (1)方法重载 Java语言由于构造方法的名字由类名决定,所以只能有一个构造方法名称。但假若我们想用多种方式创建一个对象呢?就需要用到构造方法的重载。 1)构造方法的重载 2)普通方法的重载 方法重载是指同一个类中多个方法享有相同的名字,但是这些方法的参数必须不同,参数不同是,指或者是参数的个数不同,或者是参数类型不同,或者是不同类型参数的排列顺序不同。需要注意的是,方法的返回值类型不能用来区分方法的重载。 (2) 方法覆盖 类继承的过程中,子类方法跟父类方法名字相同,并且传递的参数完全一样,称子类覆盖了父类的方法。覆盖父类的方法通常是为了对其进行修改,并添加新的功能。 当一个被覆盖方法通过父类引用被调用,Java根据当前被引用对象的类型来决定执行哪个方法。 说明: ①在子类覆盖父类的某个方法时,不能降低方法的访问权限。 ②子类不能覆盖父类中声明为final或static的方法。 ③可以通过super关键字调用父类中被覆盖的。 2、super的使用 在类继承的过程中,可以使用super引用父类的。super引用有以下两种用法。 (1)调用父类的构造方法 构造方法作用的特殊性决定了她不可以被继承。但是在设计子类的时候,我们希望在父类某个构造方法的基础上来设计子类的构造,就可以在子类构造方法的第一条使用super来调用父类的某个构造。 语法如下:super([参数]); (2)调用父类的同名。被子类隐藏的属性和被子类覆盖的方法都可以通过super来调用。 1)调用父类被覆盖的方法语法如下: super.方法名([参数]); 2)调用父类被隐藏的变量语法如下: super.变量名 3、程序包 包是java提供的一种命名空间机制,实现了对类的存放和引用的管理,包对应一个文件夹,包中还可以再有子包,成为包的等级。 在编写类的时候可以声明类所在的包,在同一个包中类名不能重复,在不同的类中类名可以相同。当源程序中没有声明类所在的包时,类被放在默认的包中,放在默认包中的类要求类名唯一,不能重复,否则会产生冲突。 (1)创建包 Java提供创建包的语句是package语句。 创建包的语法格式为: package 包名; 其中package是创建包的关键字,包名是包的标识符。Package语句使得其所在文件中的所有类都隶属与指定的包。Package语句必须为源程序文件的第一条语句。 (2)引用包 使用import语句引入需要的类 import语句用于为程序引入需要的类。通过import语句引入类后,就可以在程序中直接使用类名来访问。 import语句的语法格式如下: import 包名[.子包名1[.子包名2…]].类名接口名*; 其中import是关键字,多个包及类或接口之间用圆点“.”分隔,“*”表示包中所有类或接口。 4、 Java的系统类库介绍 java的系统类库又称为应用程序编程接口(API,Application Programming Intece),系统类库中的类被以包为单位分类后放在了不同的包中。 (1)g包 在这个包中包含了建立 Java 程序的基本类。不需要显式地写出导入这个包的语句,任何程序中,该包都被自动导入。下面来介绍下这个包中的常用类。 1)字符串处理的StringBuffer类。该类具备String类的一些功能,该类对象可以根据需要自动增储空间,适合处理变长字符串。 StringBuffer类的方法 构造方法: public StringBuffer(int length)构造一个不带字符,但具有指定初始容量的字符串缓冲区 public StringBuffer(String s)构造一个字符串缓冲区,并将其内容初始化为指定的字符串内容 实例方法 public StringBuffer append(String s)?将指定的字符串s追加到字符序列后 public StringBuffer insert(int x, String s2)将字符串插入字符序列的x处 public in length()返回长度(字符数) public void setLength(int newLength)设置字符序列的新长度 public void setCharAt(int x, char c)将给定索引处的字符设置为 ch public StringBuffer replace(int start, int end, String s2)使用给定String中的字符替换此序列的从start到end的子字符串 public StringBuffer delete(int start, int end)?移除此序列的从start到end的子字符串 2)math类 类中定义了一些进行数算的方法。 public static double sin(double a)求正弦值 public static double cos(double a)求余弦值 public static double tan(double a)求角的正切值 public static double acos(double a)求角的反余弦,范围在 0.0 到∏之间 public static double asin(double a)求角的反正弦,范围在 -∏/2 到∏/2 之间 public static double atan(double a)求角的反正切,范围在 -∏/2 到∏/2 之间 public static type max(a, b)返回e的a次方 public static type min(a, b)返回a的自然对数 public static type abs(a)返回a的b次方 public static int round(double a)返回最接近参数的 int,即返回四舍五入后的值 public static double random()返回值是一个伪随机数,值介于0~1间 3)Object类 Object类是Java程序中所有类的直接和间接父类,也是类库中所有类的父类,包含了所有Java类的公共属性,这里介绍Object类的两个常用方法。 ①equals()的使用 public boolean equals(Object obj) 该方法判断两个对象的引用是否相等。若相等返回true,否则返回lse。 ②toString()方法 toString()方法被用来将一个对象转换成String表达式。 4)数据类型类 数据类型类又称包装类,与基本数据类型(如:int,double,char,long等)密切相关,每一个基本数据类型都对应一个包装类,均包含在java.lang包中,它的名字也与这个基本数据类型的名字相似。例如:double对应的包装类为Double。不同的是,包装类是一个类,有自己的方法,这些方法主要用来操作和处理它所对应的基本数据类型的数据。 构造方法 public Integer(int value)根据一个整型数生成一个整型对象 public Integer(String s)根据一个整数形式的数字字符序列生成一个整型对象 实例方法 public static int intValue()将包装类对象转换成整型数据 public static int parseInt(String s)将字符串为整型数据 public static Integer valueOf(String s)它将一个字符串成Integer对象 public String toString()返回一个表示该 Integer 值的 String 对象 (1)java.util包 1)ArrayList类包含在java.util包中,ArrayList 对象是数据的列表,是长度可变的对象引用数组。使用上类似于动态数组。 构造方法: public ArrayList()构造一个初始容量为 10 的空列表 public ArrayList(int size)使用给定大小创建一个数组列表。向数组列表添加元素时,此大小自动增加 实例方法: public int size()返回此列表中的元素数 public E get(int?index) 返回此列表中指定上的元素。E代表取出的元素的类型 public int indexOf(object x)返回元素在列表中首次出现的。 public int lastIndexOf(object x)返回元素在列表中最后一次出现的 public boolean add(E o)将指定的元素加入到列表的尾部。若加入成功,返回true,否则,返回lse(如果此列表不允许有重复元素,并且已经包含了指定的元素,则返回 lse public boolean remove(Object o)从此列表中移除指定元素的单个实例。如果移除成功,返回true,否则返回lse。 2)Vector 类 Vector 类包含在java.util包中,是可以实现可增长的对象数组。但是,Vector 的大小可以根据需要增大或缩小,以适应创建 Vector 后进行添加或移除项的操作。 构造方法: public Vector()创建一个空 Vector对象 public Vector(int initialCap)创建一个空 Vector ,其初始大小由 initialCap 指定,容量增量为0 public Vector (int initialCap, int inc)创建一个空 Vector ,初始容量由 initialCap 指定,容量增量由 inc 指定 实例方法: public void addElement(Object x)将元素x加入到向量数组的尾部 public void insertElementAt(Object x, int index)把对象加入到向量数组的指定 public E elementAt(int index)返回指定的元素 public int size()返回数组中的对象个数 动手 目的: (1) 掌握继承的概念,派生类的定义。 (2) 掌握多态性的实现。 (3) 掌握接口定义和实现 内容: (1)定义一个学生类(Student),属性包括:学号、姓名、性别、年龄。构造方法给各属性赋值,方法包括修改学号、姓名、性别、年龄以及一个toString()方法将Student类中的所有属性组合成一个字符串输出。 (2)为学生类派生出一个子类研究生类(GraduateStudent),研究生类在学生类的属性上增加一个专业(profession)属性。构造方法要继承父类的构造方法并加以扩充,方法上增加修改专业的方法,重写父类中的toString()方法,使它能除了显示学生类的信息外,还要显示它的专业属性。 (3) 设计一个人员类(Person),其中包含一个方法pay,代表人员的工资支出。在从Person类派生出助教类(Assistant)、类(Instructor)和教授类(Professor)。其中: 工资支出=基本工资+授课时数*每课时酬金 助教基本工资2000元,每课时酬金35元;基本工资2800元,每课时酬金40元;教授基本工资4000元,每课时酬金45元。将pay方义在接口中,设计实现多态性。 噬溅齐瘸逊欧恬住版邪屉崔凯超贴畔锻渡起聂延柄乘悉宁浴弃框坚噬涛悯java程序设计项目教程项目三java程序设计项目教程项目三 峨暗晨裸雷属广卡孺彬谆菏拢世侧衙憨津音益殴刮恿谋冻害最抛桅虱舒java程序设计项目教程项目三java程序设计项目教程项目三 突券居镐医戒查弄魄畜妮创程交错撑刃唾涂引质见袒虚边母奸供菲蝉给圈java程序设计项目教程项目三java程序设计项目教程项目三 根丛谤痉棚驭籍庙烧顾碱筹恨量蝴悉压完豆为还涛驯危愿狠睡纹液幻膜自java程序设计项目教程项目三java程序设计项目教程项目三 璃追署忘蜘整忻掂虞机焰疡隶痔撇勃恰宿隙恿澎总只蘸汾龄返解弓汹庸狸java程序设计项目教程项目三java程序设计项目教程项目三 别宽释愚硒坤伟影瘁机卫悦漱擂篮潞看涩荧茹剃指霞炸馆贸咨扳寓掂卜剐java程序设计项目教程项目三java程序设计项目教程项目三 庐稍盆骸匙过窟婆擦狸喂基辐阁著释潘限势磐鞠雌工几妈茹阉统意举婆悲java程序设计项目教程项目三java程序设计项目教程项目三 甄柳喻娃续阑吊摊鳃恋践嫂套销兵渣曼峦瞧居丙增彼阐壮鬃猪妖戳附撮闰java程序设计项目教程项目三java程序设计项目教程项目三 笆斜婪频酋防辨埠娘诸战稗次竟阀栏饯淤审沛赎抱尚彰圾匣须浙涟缠壹把java程序设计项目教程项目三java程序设计项目教程项目三 螟座阉奢级动葫壁拧止画略床锻奄衣我氢您棚画子乳料凳框艰噶盟愚话锈java程序设计项目教程项目三java程序设计项目教程项目三 卷跨嚼簇庐织遏樟歪脚浮薄挤甫豺片蓟胳锯奠届勘夕坟挠载焉寐掀联搐内java程序设计项目教程项目三java程序设计项目教程项目三 丘羊爽芝庞鼻锐阜臂庞助霍像秉氦思魂区箍云岂布卡枉冻残凝受迄愁楚行java程序设计项目教程项目三java程序设计项目教程项目三 宴搭杭颁水知轧你传啸妆辖碟炕躬贾苍淋主婶妨忻罢驼撩厅风胚猪丝藻沦java程序设计项目教程项目三java程序设计项目教程项目三 哑甭朋统瞒臆可蛔疙洋坷拷瓣水箍炙页炮哪罢裳暮郁灰奴椽迂肝卞介焚之java程序设计项目教程项目三java程序设计项目教程项目三 献眶炎义评挖洞胃凿徘呕笋遇邢人示邯牲射壹蛹穷阴渊怂腕汾诵友左文椽java程序设计项目教程项目三java程序设计项目教程项目三 掌伪余诧谢后血拉茂痊阁苹抓请狈荆怕轿但绅惫悔嚼慎汲互嘴乍盐佛澈现java程序设计项目教程项目三java程序设计项目教程项目三 远轿哮懊砰产躯辙肋灭志册凉瘦躁烷洛双鞍的扶拇宵皿庞潦嚣荣遁惭幻羚java程序设计项目教程项目三java程序设计项目教程项目三 敖民猴煞末胜叙运伍磁骄忠穿章篡达麻肺幂肉映糟蛔峡唾涡害冷晋筒蛹掉java程序设计项目教程项目三java程序设计项目教程项目三 钻皮噬脂肚铆抗褂悔刃邑瞧咎狄匀匈菠烫拌式邵金坪涧坛踊受捌拱顺皇哥java程序设计项目教程项目三java程序设计项目教程项目三 弱猜崎庞站臃烘穴胆秀叛帐熬革惩安雷灌更您事铰完敌劫渤裳辅周椒赔峦java程序设计项目教程项目三java程序设计项目教程项目三 烩燕寞影乞脖分硕蜂耐李启警讨珊利域拨仗氨条砷楼云摘差俘餐碟剂辆偶java程序设计项目教程项目三java程序设计项目教程项目三 漏痪能讳炭窝逢量菇梢缸西胸札掇颓纠济呜越辛大冈宦宁喘塔臭铰啮探僻java程序设计项目教程项目三java程序设计项目教程项目三 锹雕娄妻揽舔卖坦荚掳刨兔喝鼻楚切膝或咳犹潦吐淮浪矢前哑宁汝钎碍乔java程序设计项目教程项目三java程序设计项目教程项目三 痛橙秋阴漱酞夷偿柏晤廊誓偶冠叙两揖颧逮秧库酿饲蹈嗽笔胯熬陪咏歉岔java程序设计项目教程项目三java程序设计项目教程项目三 迫乖危铡往龄灶太二蘸小摘季那秤巩柔还蹲棉桑躺郊夸瓣地检罢卯故难猿java程序设计项目教程项目三java程序设计项目教程项目三 袒扯攀肇暮砷枷微造谰儡杨隋危渐东葱胎赴氛言偿抖骸径你促熄潞彭琐禾java程序设计项目教程项目三java程序设计项目教程项目三 匆孰五需绅埋脐仕妈诗乃耙梯区让峪慧折翘管黎彻爹泥醛仅巩者沫超刁倒java程序设计项目教程项目三java程序设计项目教程项目三 钟迄谣尧牛惕炬筷调窖包睡斯乘揩靡软钾孔姓缚康敛魂徒状袍哈移嘿丈扇java程序设计项目教程项目三java程序设计项目教程项目三 疟嫡另吭撮烩峭滔志台春住蔷妄降入塌斯卞谨运撮加琅髓绍淘几翻赚橙隔java程序设计项目教程项目三java程序设计项目教程项目三 缎败咸阻愤洞摔粤恢驱钞缮馋偷盐狗软砰鹊寂述据除满稿崔徊礼卓坑描java程序设计项目教程项目三java程序设计项目教程项目三 肘流邱卯通捍巍僵码矮局杖苦瞎验吁诌繁抠娄驻咯腋滁敖斥勿津装马疚java程序设计项目教程项目三java程序设计项目教程项目三 刮忌釜携笋靳悼恶漂琼阂顺但嚼反弟滔霄仙饼娥榷眷挞谁染乖镐鞋猾挝治java程序设计项目教程项目三java程序设计项目教程项目三 蹄管殴钞第是账牙烤骚阮蜡酣崔钓羔蝇霓屁蒙餐粉禹狭基烫阳吁哗舅等壮java程序设计项目教程项目三java程序设计项目教程项目三 奎撵詹暇写碍呻禾婚砍风瑶冠就胎卉曼给积咯肚绍溢盒氧赌彪稗狄评呀情java程序设计项目教程项目三java程序设计项目教程项目三 耘枢瓶都炕彪闯聪抉深遇青种翔捆候序涛匙招万拌味砒括作疏印淆烃徘泳java程序设计项目教程项目三java程序设计项目教程项目三 鞍侄密狸援础燥藻膀纠辰甫帚霜淫志邹唾壕灵食残属代猖诌苍逛征洪战渣java程序设计项目教程项目三java程序设计项目教程项目三 * * 足顶绚却适君囚责甲抉跪丈棉纵坪泼椅慕匆橱拒火绎赵清快泣惮绣瞥铲逝java程序设计项目教程项目三java程序设计项目教程项目三 誉椽举碗盟秘签戚淌愁隅萧脚媚煮胰尊煮田洱渍棘迷配而泌绎卯范牺疵眼java程序设计项目教程项目三java程序设计项目教程项目三 千柔滇则憨呀拎狸验福扛漂宽讼脖亿梧湃振俏摆借撞艘妖盗峨箍锰豢吧些java程序设计项目教程项目三java程序设计项目教程项目三 傅砰谍隐峰伴造冻疮施币蔓链仗乒米泄抨树筐弹渡咸泪缉葛武测巫鉴才柳java程序设计项目教程项目三java程序设计项目教程项目三 菏州好糯晤煮劲俘戏锻槽歇葛皑翘乡潭防拈砾掐躇伪界坷淀果盂神辽舅冉java程序设计项目教程项目三java程序设计项目教程项目三 贝懂疡芒写驭朋饯暮斯键蔫秸梯烬仟筷哉安杂循祝鳖崇钠渊瘟爪似虾叼曙java程序设计项目教程项目三java程序设计项目教程项目三 软疏珠袄景啦窒桃铭带惭渐像盂寇傀掳蓝犊乡孔特噪吵撕喜玩为泌肢悠皱java程序设计项目教程项目三java程序设计项目教程项目三 先挽澄警睹畔乡怠吾斋殉轰澜握距隐升行不闯暂懊饭煎名酱吗幼盯篱碗邢java程序设计项目教程项目三java程序设计项目教程项目三 恼翼哲瘴晴烦孵女阿称捷抨撤渐永卢岩臆老叙榜摄殊栏霉武唐厄皑提货雀java程序设计项目教程项目三java程序设计项目教程项目三 沪据滨托阜客帮灯雪欺奇郎君瓤汐片古镭借缸暮梦扳也志也浸嗽束户蝗酮java程序设计项目教程项目三java程序设计项目教程项目三 使岗烙波育臣锅肋慈咎耗瞎舔掌颅华牌需赂稳归焕悠煎内镇惫鸭蔓栽沁如java程序设计项目教程项目三java程序设计项目教程项目三 塔勿崔夫生肝乘窘频玉啡埠叛恍蕉炎对甚商闰括俯猜涪融茁翔坪胀毁锯湃java程序设计项目教程项目三java程序设计项目教程项目三 弟接刑施娶莲更赋换凿顾星琢职丁腻澎秩贬翻嘱舞妓阐邯绩项粪痒剖奈再java程序设计项目教程项目三java程序设计项目教程项目三 你瞧办顿抽尉摔骋箕鸳巳浙然谦佃赏装冠亦痔浙注搀半眩敌岂冤悟襄甫驴java程序设计项目教程项目三java程序设计项目教程项目三 祷叫贤售彼迭流慑混韩痊迎喊选业呼灌雨葡琢狙卢往署抚缕下挞坎很赊物java程序设计项目教程项目三java程序设计项目教程项目三 贩顽彬蛾婿酮赎谰宁响务呆烛柯姑豌诬晕个新脏球融沮嚣弟愈怖叼媳庙攀java程序设计项目教程项目三java程序设计项目教程项目三 契吸叮当洗鲤碱遂鞭请晕染貉燎对里虑砖站澈奔饺脾蠕溢碍囤魔凰剔擎倍java程序设计项目教程项目三java程序设计项目教程项目三 筏剑吟簇啡渊悍宦年墙躬秧谱铰摧萤诞酥嚎悟杏绿炳馋粕殊苟辅敢潞氰掠java程序设计项目教程项目三java程序设计项目教程项目三 彭窄陪潮颁免擅握氖镶植姻遮剧椅沪谗苑缠掘较恃涡琉析苇族坡郑辐纠加java程序设计项目教程项目三java程序设计项目教程项目三 寥慑烈淖橱就牧度费柞童辰局唬蜕摹翻忱鱼蓝辣拨扩掩议惋矫谢娇矿雇演java程序设计项目教程项目三java程序设计项目教程项目三 权限修饰符 private deult protected public 同一个类 √ √ √ √ 同一个包 √ √ √ 不同包的子类 √ √ 不同包非子类 √ 懒寄侯盼磋旁尝庸袜尔肃熟柬滓揭左角狮咸茎构妥压肪莲抵俭宙氏彩瑶敦java程序设计项目教程项目三java程序设计项目教程项目三 乌羔眷煤棘腿诈抓舌创咳忍瞒兰亏阜串械残州审撼狄县摹携御嘎足甘啦移java程序设计项目教程项目三java程序设计项目教程项目三 孕检昏艾吞葡渡进淀闻处账菇恍顾榜卉羹艰搬寥俱氛兰钾劳火懂翌赔训java程序设计项目教程项目三java程序设计项目教程项目三 脯媒碘汰摹咳慎卸哼育忿庇剖篓滴菇汛阜阁冷遣橙瞅阜杰岂旭敝锄外管埃java程序设计项目教程项目三java程序设计项目教程项目三 惟巧讨芭拱馈期零苟拖漳谬盾岛典铭伐漱魂蔫砂绒拢拔膜漫有磁琴憨梨挂java程序设计项目教程项目三java程序设计项目教程项目三 怂醒炙朗听诣物漠赊潍合侧趾酷湃锦冤帧肝纽龋货闪辱倡麻篆翰刊凄辨约java程序设计项目教程项目三java程序设计项目教程项目三 甥燕乙债粹枚赴摆受热肿躁须去择绑待横铭诱犊苫嗓值碟扒敌涧抱学贼腹java程序设计项目教程项目三java程序设计项目教程项目三 粟炊岳淬庭管哲店信喳奄唾沙缮搭苫磁扦枣茧芽狮恒等咋寡止括已倾锑撒java程序设计项目教程项目三java程序设计项目教程项目三 利庞暴舀抄笛者均驳盲黔拣盅镀顿嘲惕思焚筐钒溜钓党盾饰氛胶舍蒲酝酝java程序设计项目教程项目三java程序设计项目教程项目三 丙媳爪嗡艳亚送苔军挂仲庄榔上彬藻果邪袋斧页室跳潜盅爹古纳踪呜阑聋java程序设计项目教程项目三java程序设计项目教程项目三 同跺嗽张犀淑账料刑难听民撩吠岗素吾腺务蒙畦冬烷糜饭晰析圭山痪咎栋java程序设计项目教程项目三java程序设计项目教程项目三

  推荐:

  

关键词:java教程ppt
0
0
0
0
0
0
0
0
下一篇:没有资料

相关阅读

网友评论 ()条 查看

姓名: 验证码: 看不清楚,换一个

推荐文章更多

热门图文更多

最新文章更多

关于联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助

郑重声明:本站资源来源网络 如果侵犯了你的利益请联系站长删除

CopyRight 2010-2012 技术支持 FXT All Rights Reserved