收藏 分享(赏)

java考试复习重点资料.doc

上传人:精品资料 文档编号:8372095 上传时间:2019-06-23 格式:DOC 页数:59 大小:402.66KB
下载 相关 举报
java考试复习重点资料.doc_第1页
第1页 / 共59页
java考试复习重点资料.doc_第2页
第2页 / 共59页
java考试复习重点资料.doc_第3页
第3页 / 共59页
java考试复习重点资料.doc_第4页
第4页 / 共59页
java考试复习重点资料.doc_第5页
第5页 / 共59页
点击查看更多>>
资源描述

1、1JAVA 考试重点复习第一章 Java 概述1. Java 如何实现跨平台?通过 Java 虚拟机 JVM 来实现跨平台,先将 Java 源程序编译成字节码(后缀为.class 的代码) ,字节码可以在 Java 虚拟机上运行,不同的平台有不同的 Java 虚拟机 JVM,相同的字节码可以不同的平台上运行。2. Java 开发的三个平台是什么?J2SE、J2EE 和 J2ME3. 如何编译与运行 java 程序?在 Dos 命令提示符状态下通过命令行来实现的。例如:Outputtest.javaccjavac test.class java如果用命令行运行 test 的话,后面不可以写“.c

2、lass” ,若写成 test.class 系统会把class 当成类名 test 当成类包,所以在没有类包的情况下不要写成“.class”形式。第二章 Java 基础1. 什么是标识符?如何定义标识符?标识符是用来标识变量、常量、方法、类、对象等元素的有效字符序列。Java 语言规定标识符由字母、下划线、美元符号和数字等组成,并且第一个字符不能是数字。对标识符的约定:(1)变量名、对象名、方法名、报名等标识符全部采用小写字母;如果标识符由多个单词构成,则首字母小写,其后单词的首字母大写,其余字母小写,如getAge。 (2)类名首字母大写。 (3)常量名全部字母大写。2. 关键字的定义?关键

3、字是由 Java 语言定义的、具有特殊含义的字符序列。其首字母不能大写。如:this,super,extends ,if,class,instanceof3.Java 中数据类型的结构?float 与 double 定义时的区别: float 型的数要在后面要加 f,如 34.5f4. 常量与变量的声明方式?常量: final修饰符类型标识符 常量名= (直接)常量如: final public double PAI=3.14;变量: 修饰符 类型标识符 变量名=常量;如: public float x=25.4f;常量与变量的区别:一旦定义为常量了,其值不能改变,若要改变其值,只能改变声明时

4、Jav数 据 类 型 类 型le类型 布 尔 (bolean) 数 值 类 型 短 整 数 (short) 字 节 (byte) 字 符 (char) 长 整 数 (long) 整 数 (int) 双 精 度 浮 点 数 (double) 单 精 度 浮 点 数 (float) 定 点 类 型 浮 点 类 型 基 本 数 据 类 型 引 用 数 据 类 型 类 接 口 数 组 2的值。5. Java 的运算符和表达式?单目运算符: +、-、- 双目运算符: +、-、*、/、%逻辑运算符: (5 表示数组的单元长度是 5)c0=-5;或 intc=1,2,3; c2=3;引用数据类型数组的声明初

5、始化例:Strings=new String3; (3 表示有 3 个单元)S0=new String(“ab”);或Strings1=“1”, “2”, “3”;或Strings1= new String(“1”);Strings2= new String(“2”);Strings3= new String(“3”);3. 如何声明数组,初始化数组以及使用数组?4. 如何获得数组单元的长度?int len=s.length5. 熟练掌握一维数组的声明、初始化和操作6. 字符串的声明与初始化? 常量字符串 String 字符串直接量字符串 字符串常量可变字符串 StringBuffer字符串S

6、tring s=“hello” hello 会保存在字符串值里字符串直接量String s1=new string(“hello”); 在堆上开辟了一个新的对象空间来存放 hello对象变量3String s2=“hello”; 先看字符串池里面有没有 hello,若有则直接将 s2 指向那个位置String s3=new string(“hello”);只要有 new 出现就一定会开辟一个新的空间。7. 字符串直接量与字符串常量的区别:存储位置不一样,字符串直接量放在字符串值里,字符串常量放在堆上。8. 常量字符串类与可变字符串类分别是什么?9. 常量字符串的基本操作方法有哪些?5+5+“H

7、ello”=? “ 10Hello” “Hello”+5+5=? “Hello55”“=”与“equals”的区别:比较对象是否相等的方法是“=”和“equals”,在采用“equals”进行比较时不会出现问题,“=”比较引用变量的值, “equals”(对象:内存里整块存储的东西,对象变量 String s1 s1即为对象变量)比较的是对象里的内容,故比较时应该比较对象里面所包含的内容而不是对象变量。第六、七、八章1. 什么是类?类的成员组成?接口是否为类的成员?类就是将我们自然界中的事物的属性特点和行为特点抽象封装到类当中,反映这类事物的特点和功能。类的成员包括域变量和成员方法,对于域变量

8、和成员方法都可以用 static来修饰,static 修饰的域变量称为类变量,static 修饰的方法称为类方法,没有被 static 修饰的域变量和成员方法称为实例变量(可以在程序中直接调用)和实例方法。接口不是类的成员,是一种特殊的类,不用 class,而用 interface。2. 关于类的正确表述?必须依照类的写法,如何定义3. 什么是静态域变量和实例域变量,静态方法和实例方法?静态域变量称为类变量,静态方法也称为类方法,因为它们可以通过“类名.”来调用。4. 什么是对象?如何创建对象?什么是对象变量?如何对对象进行初始化?对象是类的一个实例。new 在创建对象的作用:(1)通过 ne

9、w 在堆上开辟一个对象空间,将类当中的域变量跟成员方法复制到对象空间当中;(2)通过 new 来调用构造方法来初始化对象;(3)将对象空间的首地址赋值给对象变量。对象变量就是指对象的首地址,通过构造方法对对象进行初始化。5. 什么是构造方法?构造方法的特点与作用?构造方法:(1)在一个类中方法名与类名相同的方法;(2)构造方法不是通过对象来调用,而是通过 new 运算符来调用;(3)构造方法是一种特殊的成员方法,它没有返回值。构造方法特点:可以被重载,当没有在类中定义构造方法时,系统会默认提供一个不带参数的构造方法。作用:初始化对象。6. super 和 this 关键字的用法?this 用在

10、当前类,当前类的一个默认的对象,可以通过 this 来调用当前类的属性和成员方法,也可以直接调用当前类的构造方法的重载方法。super 用于一个类的子类中,作为父类在子类中的一个默认的对象,通过它来调用父类的成员属性和成员方法,也可以在子类的构造方法里直接调用父类的构造方法。7. final 修饰类、变量和方法时各有什么特点?修饰类:这个类不能够被继承。修饰变量:这个变量值不能改变,成为一个常量。4修饰方法:这个方法不能被覆盖。8. 面向对象编程中,java 类的三个主要特征是?三个主要特征:封装性、继承性和多态性封装性:通过类的访问修饰符来实现封装性的 public,protected,缺省

11、,private 的访问权限继承性:extends 一个类继承了另一个类,那么父类的所有成员属性和成员方法都可以被继承到子类当中,子类也可以创建新的成员属性和成员方法(现有的类创建新的类的特性) super多态性:静态多态性,如:重载函数。动态多态性,如:覆盖函数。重载(overload):一个类中可以定义多个名称相同,但参数变量不同的方法,重载方法与返回类型无关,重载方法常常用于构造方法,用于实现不同功能的初始化工作,重载也称为静态多态性,这是由于该方法被调用时采用静态地址充定位方式。覆盖(override):在子类中对父类的某方法进行了重新定义,但方法的签名特征与父亲完全一致,访问修饰符的

12、访问的限制宽于或至少等于父类的访问权限;主要用于实现同一个方法在不同的类中实现不同的表现形式,覆盖也称为动态多态性,这是由于该方法只有在运行时才能确定所调用的地址(也是多态性) 。9. 什么是抽象类?什么是抽象方法?抽象类的特点?在类中至少有一个方法是抽象方法,那么这个类就称为抽象类,用 abstract 来修饰抽象类。抽象方法即没有定义这个方法的主体,给出这个方法的签名特征。特点:抽象类的对象变量是通过它的非抽象的子类来初始化的。如:Animal T=new Tiger() 里的方法都是抽象方法,修饰符为 public,没有写默认为public抽象类 非抽象类10. 什么是接口?接口的特点?

13、接口的作用?接口是使用 interface 关键字来代替 class 的特殊的类。接口的三种形式:(1)仅有常量接口;(2)常量和抽象方法接口(3)仅有抽象方法接口。作用:(1)可以实现常量接口在多个类当中共享常量;(2)实现共享一组标准操作来实现多个类之间的共享约定;(3)实现多态性。11. 接口与抽象类的区别?接口中所有的方法都是抽象方法,不管这个方法是否使用 public,abstract 修饰,它都是默认的公有的抽象方法,抽象类至少有一个抽象方法,而且还有一个成员方法,接口中不能定义构造方法,抽象类可以定义构造方法。12. 什么是包?包的作用?包是 java 语言提供的组织类和接口的工

14、具,将一组相关的类为接口,组织到一个包中。作用:(1)通过包可以来确定类的唯一标识;(2)通过包可以将相似功能的类和接口组织在一个包中。第九章1. 什么是异常?为什么要处理异常?异常是指程序运行过程中出现的非正常现象。由于异常情况总是难免的,良好的应用程序除了具备用户所要求的基本功能外,还应该具备预见并处理可发生的各种异常的功能。2. 异常的基本处理方式?常用的异常类有哪些?5两种处理方式:(1)一旦捕获异常马上进行处理。try,catch,finally(2)捕获异常并不处理,而是利用方法将异常抛出,throw,throws3. Error 和 Exception 类的区别?Error 是用

15、来处理较少发生的系统内部的错误,程序员对这些错误通常无能为力,只能在发生时由用户按照提示来终止程序的运行。4. throw 和 throws 语句的区别?throw 是抛出一个异常对象,如: throw new Exceptionthrows 是某一个方法在声明和定义时,这个方法后面紧跟着 throws,然后阐明这个方法可能抛出异常,如:throws new Exception 这个异常可以是标准异常类,也可以是自定义的异常类。第十章1. Java 输入输出的基本方式?主要是通过输入和输出流实现的,输入流将数据从文件标准输出或其他外部设备输入,输出流将数据保存到文件或传输给相关的设备。2. 字

16、符流域字节流的区别是什么?举例说明哪些类处理字符流?哪些处理字节流?如果字节流向字符流进行转换需要用什么类?字节流是以字节为单位的访问文件,字节流具有两个重要的抽象类, “input stream 和 output stream”。字符流是以字符为单位的访问文件,两个重要的抽象类, “Reader 和Writer”。桥接类在定义字节流时,由于任何字节流的类都跟着一个 stream,字符流的类后缀reader,writer。桥接类:跟着 Inputstream reader 和 Outputstream writer。3. 为什么需要使用带有缓冲的输入输出流进行数据的读取与写入?提高运行效率,对

17、字符而言,为 Buffer Reader,对字节而言,Buffer Input stream 如:Buffer Reader new=Buffer Reader()第十一、十二章1. javaGUI 编程需要导入哪些包?.awt*,.Swing*,.event*2. 什么是组件?什么是容器?哪些是顶层容器?哪些是中间容器?组件是图形用户界面是哪个现实的各种图形基本成分和核心元素。容器是可以包含其他组件的组件,容器是组件的一种。顶层容器:JFrame,JDialog ,JApplet(用于布局其他容器与组件的最基本容器)中间容器:JPanel,JScrollpane ,JTabbedpane ,

18、JToolBar最灵活最常用的中间容器3. 什么是布局管理器?作用是什么?说出三种布局管理器及其特点。布局管理器是用来管理各种组件 容器中摆放位置的对象;作用是将组件房子相应的位置,使容器中的组件安排更加合理,减少与系统平台的相关性;BorderLayout(边布局)类:把容器内的空间划分为东、西、南、北、中五个区域;FlowLayout(流式布局)类:从左到右排列;GridLayout(网格布局)类:从左到右从上到下的顺序依次放入各网格中(没个网格只能放一个组件)4. 什么是事件?Java 如何处理用户的操作?事件:当用户用键盘或鼠标来进行操作时,操作系统发出的相应的信号。事件源:用户在操作

19、过程中所使用的相关组件。通过事件驱动模型来处理用户操作的。5. 列出常用的时间监听器接口及其方法。6ActionListener actionperformed()AdjustmentListener adjustmentValueChange()FocusListener focusLost() focusGained()ItemListener itemStateChange()KeyListener keyPressed()正按下那个键还没有弹起 keyTyped()已经按下那个键MouseListener7JAVA 编程复习总结笔记一1 安装 JDK 时不要默认安装到 C:Progra

20、m Filesjava,因为Program Files中间有空格,会对以后安装的相关软件的运行。所以,最好默认安装到 C:jdk中。2 Eclipse 也是 java 写的3 java 最关键两种机制:垃圾收集和虚拟机4 SDK: Software Development Kit JRE: Java Runtime Environment5 Solaris6 配置 path当前目录下执行,一定要写在最前面。C:test test 目录下执行7 UltraEdit-32 出现#.java.bak 文件,是 UltraEdit 自动添加的 . 高级- 配置-文件处理-备份:选择不备份就可以了8 本

21、质上讲,变量其实是内存中的一小块区域,使用变量名来访问这块区域.因此,变量必须先声明(先把这块内存给我分配了) ,后赋值(填内容) ,才能使用。9 内存管理:Heap:动态生成内存用的,即 new 出来的东西Stack:局部变量Data segment:静态变量字符串常量Code segment:存放代码10 java 变量的分类:1) 按被声明的位置局部变量:方法或语句块内部声明的成员变量:(不是 C+的全局变量)方法体外,类体的内部声明的11 Java 采用 Unicode 编码,Unicode 是全球语言统一编码12 8 位表示 1 个字节,2 个字节表示 1 个字符。(1 个字节最多表

22、示 2 的 8 次方个符号 ,所以用来表示中文,日文一个字节不够用,所以中国有国标码:GB2312)13 Boolean 只能是 true 和 false.1 Byte:一个字节 short:二个字节 int:四个字节 long:八个字节2 八进制要求以 0 开头,如 012十六进制要求以 0X 或 0x 开头,如 0x123 编程格式:1) 右大括号对齐2) 遇到左大括号 tab 键(或者 shift+tab)缩进3) 程序块之间加空行4) 并排语句之间加空格5) 运算符两边加空格6) 成对编程7) 前面有空格84 运算符/ :除 %:求余5 Void catchdog (Dog d) d.

23、scream();)6 JDK 本身就提供了很多类,比如 string7 引用变量相关知识点:Java 里除了基本类型(四类八种)之外的变量都叫引用类型Java 中的对象是通过引用对其操作的。引用分配的是两块内存:String s; 先在内存中占 NULL,在 stack 内存中S = new string(“hi”); 完了实际分配内存,s 指向了在 heap 内存中中 new 出的对象类的成员变量在不同的对象中有不同的值但方法只有一份,不占内存,只是一堆代码。只有在执行的时候才占内存。8 使用对象(引用).成员变量使用对象(引用).方法来调对象的方法。9 构造方法与类同名且没有返回值,而其

24、他的方法必须要有返回值,没有 int double的时候必须也要有 void.10 Person jyang = new person(1,3);的时候,注意类 person 带了参数,说明不是编译器自动添加的构造函数了,这说明已经重载的构造方法。如果没有重载的话,应该是 person jyang = new person();11 约定俗成的命名规则:1) 类名的首字母大写2) 变量名和方法名的首字母小写3) 驼峰标识1 static1) static 的成员变量只有一份,不像其他的成员变量只要 new 一个对象就有一份。2) 在调用 static 方法时,不会将对象的引用传递给它!stat

25、ic 方法中不能访问非 static成员,即静态方法不再是针对某个对象调用,所以不能访问非静态方法。3) 可以通过对象引用或类名(不需要实例化)访问静态成员。2 第一句话写 package访问位于同一个包下面的类不需要引入3 java.lang 包含一些 java 的核心类,如 string,math,integer,system 和 Thread,提供常用功能。Java.awt 包含了构成抽象窗口工具集(abstract window toolkits)的多个类,用来构建GUI。Java.applet 包含 applet 运行所需的一些类。J 包含执行与网络相关的操作的类。Java.ioJa

26、va.util 包含一些实用工具类,如定义系统特性,使用与日期日历相关的函数。94 jar cvf xx.jar *.*5 private 类内部访问,即使是子类继承了也不能用。default 类内部,同一个包内的其它类也可以访问protected 类内部。同一个包可以访问或者不是这个包但是子类也可以public 任何地方都可以6 extends 通过继承,子类自动拥有了基类的所有成员变量和方法。7 java 只支持单继承,一个子类只能有一个基类,但一个基类可有派生出多个子类8 重写:override在子类中可以根据需要从基类中继承来的方法进行重写。重写方法必须和被重写的方法具有相同的方法名称

27、,参数列表和返回类型重写方法不能使用比被重写方法更严格的访问权限重载:一个类中的。9 Java 类中使用 super 来引用基类成分,This 是当前对象的引用(this.#),super 是父类对象的引用(super.#)。1 继承中构造方法的规则1) 子类的构造的过程中必须 调用其基类的构造方法,即构造子类的时候必须先构造好基类(没有父亲的存在哪有儿子的存在 )2) 子类可以在自己的构造方法中使用 super(argment_list)调用基类的构造方法.如果调用 super,必须写在子类构造方法的第一行3) 如果子类没有显示的调用基类构造方法,系统默认调用基类默认的构造方法( 此时,如果

28、基类构造方法重载,这时没有写无参数的构造方法,编译器没有默认构造方法,则出错)2 Object 类1) Java.lang 中的类,是所有 java 类的根基类2) 类的声明中未使用 extends 关键字指明其基类,则默认为从 objects 继承3) finalize():类似 C+的析构函数,在 java 中垃圾回收器帮忙自动调用这个方法。clone():getClass():与反射有关,返回一个对象运行时的类toString():1) object 类中定义有 public String toString (),其返回值是 String 类型,描述当前对象的有关信息。2) 在进行 St

29、ring 与其它类型数据的连接操作时(如:System.out.println(“info”+Persion), 将自动调用该对象类的 toString()方法3) 可以根据需要在用户自定义类型中重写 public String toString ()方法。system.out.println(b);(b 是一个 new 出的对象)4) 重写要 copy! 如果重写成 public String ToString(),编译没问题,但运行不行。equals():加“s”第三人称。1) system.out.println(C1 = C2) 结果为 falsesystem.out.println(

30、C1.equals(C2);结果为 false.这是最原始的 equals 方法,所以结果10换汤不换药,和上面的一样。因为比较的两个猫的引用,内存地址不等,永远不等。2) 所以需要重写 equals()方法:public boolean equals(Object obj)if(obj instanceof Cat) /如果 obj 属于一只猫Cat c = (Cat) obj; /强制转换 object 为一只猫.3) object 类中的 string 类 data 类等都已经重写了 equals 方法。1) 基类的引用类型变量可以指向其子类的对象2) 基类的引用不可以访问其子类对象新增

31、加的成员( 属性和方法 )如:基类 animal a = new dog(); a 不能访问 dog 的新增成员。3) 可以使用引用变量 instanceof 类名来判断该引用型变量所指向的对象是否属于该类或该类的子类(如:a instanceof dog)4) 子类的对象可以当作基类的对象来使用称作向上转型(upcasting),反之称为向下转型(downcasting)需强制转换。如:dog d1 = (dog) a; 把动物 a 强制转换成一只狗。1 抽象修饰符可以修饰抽象类和抽象方法。凡是用抽象修饰符修饰的类被称为抽象类。抽象类就是没有具体对象的概念类。由于抽象类是它的所有子类的公共属

32、性的集合。例:abstract class phonecard 表示电话卡类所有公共属性。修饰符 abstract 修饰的抽象方法是一种仅有方法头,而没有具体的方法体和模块实现的方法。例:abstract void phonecard;可见abstract 方法只有方法头的声明,后面没有大括号包含的方法体。2 静态修饰符使用在静态域和静态方法中,静态域是用 static 修饰符修饰仅属于类的域,它们是类的域,不属于任何一个类的具体对象,静态域是一个公共的存储单元,任何一个对象访问它时,取到的都是相同的数值。例:Set Addtory ( ):Static void setAdditory (d

33、ouble newadd) if ( newAdd 0 )additoryFee = newAdd; / additoryFee 为静态域。2.什么是构造函数?构造函数有什么特点?子类如何调用父类?1 构造函数:构造函数用来处理对象的初始化。它是一种特殊的成员函数。构造函数名必须与类名相同,它不具有任何类型,不返回任何值。2 构造函数的特点:A 可以为对象的属性赋初值,还可以在对象初始化过程中进行必要的检查和处理。 B 提高了编程的灵活性。3 子类调用父类: A 如果子类没有定义任何函数,那么就在创建子类对象时将调用父类的无参数的构造函数 B 如果子类自己定义了构造函数,则在创建子类对象时,系

34、统将首先隐含执行父类无参数的构造函数,然后再执行子类自己的构造函数。C 如果在子类自己定义的构造函数中,利用 super 关键字显式的调用父类的构造函数,系统不再隐含父类的无11参数的构造函数。PS:super 的显式调用语句必须是子类构造函数的第一个可执行语句。3.如何定义数组,如何开辟数组空间?1 声明数组:声明数组主要是声明数组的名称和数组所包含的元素的数据类型或元素的类名。 数组元素类型 数组名 ;或 数组元素类型 数组名;例: int MyIntArray ;或 D200_Card ArrayOf200Card; /类也可以当作一个基本数据类型使用2 开辟数组空间:数组名= new

35、数组元素类型 数组元素的个数;例: int MyIntArray = new int 10;D200_Card ArrayOf200Card = new D200_Card 154.用内部类和当前类如何实现监听者?内部类: Public class Test exTends AppletButton bt;Public void init ( ) bt = new Button (计算);add (bt);bt.addActionListener(new ButtonAct ( ) );class ButtonACT implements ActionListener /内部类Public v

36、oid actionperformed(ActimEvent e) / bt 的事件处理当前类: Public class Test extends Applet imPlements ActionListenerButton bt ;Public void init ( ) bt = new Button(计算)add(bt);Public viod actionPerformed (ActionEvent e) /bt 的事件处理5.有哪几种布局?每种布局的情况如何,如何使用?1 FlowLayout 布局:组件在一行中从左至右水平排列,排满后折行。A 加入组件:add(组件名);B 将布

37、局改为 FlowLayout; 使用 SetLayout( new FlowLayout ( ) );语句。也可以使用下列两种构造函数。1 FlowLayout (int align, int hgap, int vgap)Align:每行的对齐方式:LGFT,CENTER,RIGHT12Hgap:横向间距(单位是像素)Vgap:纵向间距(单位是像素)2 FlowLayout(int align) 横纵向间距固定为 5 个像素。2 BorderLayout 布局:组件按北 南 东 西几个位置排列,规定各组件间的横纵距都为 0;其他都如 1 中使用3 GrrdLayout:以行和列的网络形式或安

38、排组件指定化分网格:setLayout (new GirdLayout( 行数 列数) );加入一个空的标签:add(new Lable( ) )4 CardLayout:每一个组件为一个卡片 容器仅显示其中一张卡片A 创造对象:MyCard =new CardLayout ( )B 指定布局属性:setLayout(Mycard)C 加入组件:add( 字符串,组件);D 显示:show(容器名,字符串) ;此外:first(容器名) :显示第一个组件Last(容器名 ):显示最后一个组件Previous(容器名):显示前一个组件Next(容器名):显示下一个组件。6.简述 JAVA 事件的

39、处理机制7.什么是容器组件?(Ponel 与 Frame 的扩展)Ponel 与容器事件:Ponel 属于无边框容器。Ponel 是 Container 的子类。它是最简单的容器,它没有边框或其他可视边界,不能被移动,放大缩小或关闭。Ponel 总是作为一个容器组件被加入列其他的容器中,Ponel 也可以包含另一个 PonelFrame 可以作为一个 Application 的最外层容器,也可以被其他容器创建并弹出成为独立的容器,Frame 容器的方法有:1 getTitle( )和 setTitle(string) 2 setVisible(boolean)方法 3 dispose ( )方

40、法8.String 类的构造函数及其使用方法1 Public string ( )这个构造函数用来创建一个空的字符串常量2 Public string( Sting value)利用一个已经存在的字符串常量创建一个新的 String 对象,该对象的内容与给出的字符串常量一致。3 Public string(string Buffer buffer)利用一个已经存在的 String Buffer 对象为新建的 String 对象初始化4 Public String (char value )利用已经存在的字符数组的内容初始化新建的 string 对象Java 的开发环境(1) 、bin 目录:存

41、放可执行文件 。(2) 、lib 目录:存放 Java 的类库文件。13(3) 、demo 目录:存放演示程序。(4) 、jre 目录:存放 Java 运行环境变量。配置环境:用户变量是针对某一个用户的,而系统变量是针对整个电脑的。要加两个路径:(1) 、path 加 bin 路径;并以分号隔开。(2) 、classpath 加 .;lib 的路径。Java 数据类型分两个类别:(1) 、原始数据类型。(2) 、引用数据类型。原始数据类型Java 关键字都是小写。Byte(字节型) 8 -128127Boolean(布尔型) 1 true/false引用数据类型:(1) 、数组:具有相同数据类

42、型的变量的集合。(2) 、类:变量和方法的集合。(3) 、接口:一个抽象类,其创建目的是为了实现 Java 中的多重继承。变量的作用域和生命周期变量在作用域内为局部变量,所以在其作用域外不能使用.作用域可以嵌套。类型转换1、自动类型转换:14(1) 、两种类型必须兼容(2) 、目标类型大于源类型。2、强制类型转换3、类型提升规则赋值运算符:可以将单个语句中赋给多个变量。从右向左执行。例:p = q = r = s = num.逻辑运算符:逻辑异 :如两个值一样就为假.条件运算符 语法:Expression1 ? expression2 : expression3Java 源文件的名与公共类名一

43、样包括大小写源文件最多有一个公共类,源文件可以没有公共类,此时源文件名可以随意。数组仅声明: 例:datetype identifier声明和创建: 例:datatype ident ifier = new datetypesize;声明、创建和初始化: 例:datetype identifier=value1,value2,.valueN;命令行参数Args.length:能得到数组的长度。可以在命令行直接传数值给 main()方法的 String 类型的数组 args。对象:是存在的具体实体,具有明确定义的状态和行为。15消息传递:本质上就是方法的调用(?)消息:指一个对象为执行特定操作而

44、向另一个对象发送的请求。类类:是具有相同属性和共同行为的一组对象的集合。类的属性:对象或实体拥有的特征在类中表示时成为属性。对象执行的操作称为方法。类和对象的区别类是用来描述实体的“模板“或”原型“,而对象是实际的实体。封装隐藏属性、方法或实现的详细信息的处理方式称为封装。抽象它是指只关注对象的重要细节,而忽略对象的次要细节。通过抽象简化软件的复杂性。抽象分:(1) 、数据上的抽象(2) 、过程上的抽象。将实体的相关属性和操作根据特定的应用程序进行标识和分组的过程就是数据抽象。在 Java 中实现类语法如下:Class 类中的方法语法:(,)16调用方法类似于调用或引用实例变量。方法可是使用点

45、操作符来访问。方法被调用的对象在圆点左边,而方法的名称在圆点右边。例如:Obj . isAvailable();构造方法例:Pixel p = new Pixel();Pixel():是类中的构造方法。是 new 出来的东西都是引用类型。构造方法是只要在创建给定类的实例时就调用的一个方法。它们与类同名,但不具备任何返回类型。构造方法的特点:(1) 、跟类名相同。(2) 、没有任何返回值。(3) 、构造方法只能用 new 来调。(4) 、构造方法一般不只一个,就构成了重载。构造方法类型:(1) 、参数化构造方法。(2) 、隐式/默认构造方法。当一个类未定义构造方法时,Java 虚拟机(JVM)便

46、提供一个默认构造方法,它不带任何参数,其主体不含任何语句,这种构造方法称为隐式构造方法。类中声明构造方法,类不会再自动添加了.包主要用途:1、包允许将类合成为较小的单元,使其易于中找到和使用相应的类文件。2、有助于避免命令冲突。17创建包:package pkg;创建包前面一般加上公司的域名例如: package cn.qingdao.s1t23;自动使用包名创建一个文件,并自动将。Class 文件存放在此文件夹中。例:javac d c:java Calculate.java导入包:import package_name.*;如果使用的类是来自不同的包,且没有使用 import 语句导入该包

47、,则需要在代码中指明使用类隶属的包。方法是使用“.”来访问中的成员。例如:Mypackage.Calculate calc=new mypackage.Calculate();知识扩展:课后作业题 2、 (1) 、两个类建在一个文档下面执行的时候问什麽不成功?解:不能进入包中运行类。运行的方法是在包外加包前缀运行。例:Java parent.child.ParentTest(2) 、用点星导进所有类问什麽出现错误?解:是因为 JAVA 程序错把 .JAVA 源文件当成.class 字节码,而无法编译。只需把源程序提出包就可以了。面向对象的特点:(1) 、封装。 (2) 、继承。 (3) 、多态

48、.继承主要有点:代码的可重用性。使用关键字 extends 来继承类。一个类一经定义和调试,便可以用来创建新的子类的对象中,子类 Car、Ship 和 Plane 具有与父类相同的属性和方法。子类构造方法构造方法用于初始化特定类型的对象并分配内存,构造方法的名称与类名相同。创建对象时会自动调用构造方法。类似地,子类的构造方法的名称也与子类名相同,创建子类的对象时将调用此构造方法。需要注意的是,子类永远不会继承父类的构造方法除了构造方法之外,父类的所有方法和属性都由子类的对象继承。创建子类的对象时,它将会包含父类的所有方法和属性。父类的值应该正确地初始化,这一点非常重要。子类构造方法可以调用父类构造方法。需要注意的是,父类构造方法的调用总是先于子类构造方法的调用。18另一方面,通过使用关键字 super,程序员还可以从子类构造方法中调用父类中默认构造方法或或带参数的构造方法。调用父类调用父类构造方法的语句应该为子类构造方法中的第一个语句这是因为父类先于子类存在。例:auper(parameter_list) or super();多态性函数不能嵌套,也就是函数内部不能出现函数。重载方法:

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报