- 1、本文档共42页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java期末复习课零件第04讲面向对象程序设计
JAVA 语言 第4讲 面向对象程序设计(2) --继承 上一讲回顾 1. 面向对象的基本特征(封装、继承和多态); 2.类的定义、对象的创建和引用方法; 3.定义类时的各种细节,构造函数的定义和使用; 4.各种修饰符的使用方法。 学习要点 理解继承的概念,超类和子类的关系,掌握它们在继承中的应用; 掌握类中有关private成员的访问控制方法; 理解方法重载和方法重写的区别和使用方法; 4.1 包 包是由.class文件组成的一个集合 4.1.1 定义包 构建包语句的语法是: package pkg1[.pkg2[.pkg3…]]; 例如:package com.javaworld; package语句作为Java源文件的第一条语句。如果没有package语句,则为缺省无名包。 则该语句的前面只能有注释或空行。而且一个文件中最多有一条package语句。 包名有层次关系,全部用小写字母,各层之间用点分割. 包是类的容器,用于分割类名空间。 如果不指定,默认就存在当前文件夹里面。 当使用包说明时,程序不需要再引入同一个包或者该包的任何元素。 如果包声明是: package com.sun.java; 则此文件必须存放在Windows的com\sun\java目录下。 包名必须唯一 主要是为了交流,和便于大家的协同合作。 一个使用较多的办法是反转域名,如 com.sun.util; 包名的解释 Java解释器的执行顺序是:首先找到环境变量classpath,利用classpath包含的一个或者多个目录,把他们作为一种特殊的“根”使用,从这里开始有哪些信誉好的足球投注网站,有哪些信誉好的足球投注网站时会把“.”替换成“\”(Windows)。 4.1.2 导入包 import的语法是: import pkg1[.pkg2[.pkg3…]].(类名| * ); 例如:import java.awt.*; 引入整个包时,可以方便的访问包中的每个类。 但是引入所有的包会占用过多的内存。因此,我们建议只引入需要的类。 程序中不一定有引入语句。当需要引用某个类与当前类存储在一个物理目录下的时候,就可以直接使用,而不需要引入。 4.1.3 类路径(CLASSPATH) 编译时:javac –d CLASSPATH路径 Myclass.java 例如:javac –d d:\Myjava myclass.java 则直接在d:\Myjava下创建在myclass.java中指明的包目录,并把myclass.class拷到该目录下。 运行:java 包名.类名 如 java pk1.pk2.类名A 示例 CircleDemo2.java jdk中常用的包 java.lang----包含一些Java语言的核心类,如String、Math、Integer、System和Thread,提供常用功能。 java.awt----包含了构成抽象窗口工具集(abstract window toolkits)的多个类,这些类被用来构建和管理应用程序的图形用户界面(GUI)。 java.applet----包含applet运行所需的一些类。 java.net----包含执行与网络相关的操作的类。 java.io----包含能提供多种输入/输出功能的类。 java.util----包含一些实用工具类,如定义系统特性、使用与日期日历相关的函数。 4.1.4 访问控制 4.2 继承 面向对象的编程允许从现有类派生出新类,这称为继承。 使用继承,程序员可以创建一个定义了多个相关项目共有特性的通用类,然后,其它较为具体的类可以继承该类,同时再添加自己的独有特性。 在Java中定义的每一种类都是从现有类派生来的,或者是显式或者是隐式(如从Object类派生) // SimpleInheritance.java class A { int i, j; void showij() { System.out.println(i and j: + i + + j); } } //创建一个继承超类A的子类B class B extends A { int k; void showk() { System.out.println(k: + k); } void sum() { System.out.println(i+j+k: + (i+j+k)); } } class SimpleInheritance { public static void main(String args[]) {
文档评论(0)