19.Java复习(一)

考试题型:

1.单项选择题(40 分,2 分×20) 只要是了解考生对容易混淆的概念、理论和实践问题掌握的准确度,题目涉及 Java 语 言各个章节的概念及实际应用。
2.简答题(20 分,5 分×4) 主要考察学生对基本实践和基本理论问题及相互关系掌握的系统性、全面性、和准确性, 题目涉及理论问题。 3.分析题(10 分,5 分×2)
4. 编程题(30 分,6 分+8 分×3) (1)流程控制 (2)类和对象 (3)继承、多态和接口

各章重点:

(一)chap01 Java 概述
1.Java 的版本
JavaSE:标准版
JavaEE:企业版
JavaME:小型版

2.Java 语言的特性
简单性
面向对象性
安全性
跨平台性
支持多线程性

3 .JDK、JRE、JVM 含义
JDK:Java的开发环境,包括编译器,运行工具,文档生成工具,打包工具。
JRE:Java Runtime Environment
Java程序运行的环境

JVM:Java的虚拟机

JDK 其实包含了 JRE,同时还包含了编译 java 源码的编译器 javac,还包含了很多 java 程序调试和分析的工具。简单来说:如果你需要运行 java 程序,只需安装 JRE 就可以了,如果你需要编写 java 程序,需要安装 JDK。

4.Java 程序的开发、编译和运行(P6-8)

5.Java 的运行机制
将.java源文件进行编译
生成.class字节码文件
用虚拟机将字节码文件进行解释运行。

(二)chap02 Java 编程基础
1.注释、标识符、关键字和常量
2.数据类型种类和转换
3.运算符及优先级
4.条件语句结构和案例
5.循环语句结构和案例(累加求和;百钱买白鸡;猴子吃桃;单位换算)
6.方法定义和重载
7.数组的创建、初始化和使用(数组排序;古诗排列)

(三)chap03 类和对象

1.面向对象概念和特性
面向对象是把构成问题的事务按照一定规则划分为多个独立的对象,然后通过调用对象的方法来解决问题。
封装性 继承性 多态性

2.类的定义以及对象的关系
类是对象的抽象,描述一组对象的共同特征和行为。

Class Person()

3.类的基本元素
(1)成员变量
(2)成员方法(包括局部变量)
(3)构造方法(作用;特征)
(4)this 关键字
4.静态变量、常量和方法的表示和特征

5.类的主方法(main()方法)

6.对象的创建、访问和引用,还有比较和销毁

(四)chap04 继承、多态与接口
1.封装的含义与表示
封装就是把同一类事物的共性(包括属性和方法)归到同一类中,方便使用

2.继承的含义与表示(关键字)
继承:在一个现有类的基础上构建一个新的类,为子类;原有类为父类,子类拥有父类可继承的属性和方法。

Class Dog extends Animal{
}

3.多态含义与实现
(多态:由于参数类型不同导致执行效果各异的现象

(1)重载与重写
重载:允许在一个程序中定义多个名称相同的方法,但是参数类型和个数不同
重写:子类重写父类的方法,子类对象调用父类方法时,优先调用重写方法,原则是子类与父类被重写的方法有相同的方法名,参数列表及返回值类型。

(2)super 关键字
用于访问父类的成员(变量,方法成员,构造方法)

Super.成员变量
Super.成员方法([参数1,参数2...])

(3)对象转型(向上转型、向下转型)和 instanceof 运算符
instanceof 运算符判断一个对象是否为某个类的实例或者子类实例

if( animal instanceof Cat )

向上转型:多态中涉及到将子类对象当做父类类型使用的情况

Animal anl= new Cat()

向下转型:将父类型当作子类型使用的情况。
4.Object 类及常用方法

equals()  //指示其他对象是否与此对象相等
getClass()  //返回此Object的运行时类
hashCode()  //返回该对象hash值
toString() //返回该对象的字符串表示

5.抽象类与抽象方法
抽象方法:不包含方法体的方法。用abstract关键字修饰。
抽象类:若一个类中包含了抽象方法则必须声明为抽象类,不可被实例化,可通过子类将抽象类中实现。

6.接口表示与多重继承
(interface)用常量和抽象方法组成的特殊类
多重继承:
继承多个类,叫多重继承
在java中不充许继两个或两个以上的类
像这样class c extends a ,b是不充许的
但可以用一种间接的方式实现:接口
class c extends a implements c,d…是可以的
implements关键字可以实现接口中所有方法。

class Dog implements Animal{
}

7.抽象类与接口的比较
一个类中包含了抽象方法,则必须用abstract修饰,这为抽象类,不可被实例化。
一个类中所有方法都为抽象的,则可定义为接口,由常量和抽象方法组成的特殊类。

8.Java 系统类包

9.fianl 关键字
修饰的类不能被继承
修饰的方法不能被子类重写
修饰的变量为常量,只能赋值一次。

10.访问修饰符种类及比较

public    //被所有类访问
protected  //包内任何类及包外继承了该类的子类都可访问
default   //只有包内所有类访问
private  //只有本类可访问,包内外类不可访问。

11.异常类型和捕捉处理代码块

编译时异常

运行时异常

自定义异常

(五)chap05 实用类
1.String 类

(1)String 对象创建
1.字符串常量

String str1="abc";

2.构造方法

String()
String(String value)
String(char [] value)

(2)获取字符串信息(包括长度、索引位置)
String 类常用方法

int length() //长度
int indexOf(String str) //指定子字符串第一次出现的位置
int lastIndexOf(int ch) //返回指定字符在此字符串在最后一次出现的位置
int indexOf(int ch)     //返回指定字符在此字符串中第一次出现的位置
int lastIndexOf(String str)//返回指定子字符串在此字符串中最后一次出现的索引

(3)字符串操作(子串、去空格、替换、判断相等、分割)

Str.toUpperCase()//转大写
String.valueOf()//int转string

S.replace("")//替换
S.trim()//去空格

S.isEmpty()//判断是否为空
S.equals(S1)//判断是否相等

String[] split(String regex)//分割

(4)字符串格式化(日期时间格式化、常规类型格式化)

(5)与 StringBuffer、StringBuilder 的比较
StringBuffer(字符串缓冲区)
tringBuffer:线程安全,StringBuilder:线程不安全。
StringBuffer 适用于用在多线程操作同一个 StringBuffer 的场景,如果是单线程场合 StringBuilder 更适合。

2.Math 类(取随机数方法)和 Random 类
Math类是数学操作类,提供了一系列用于数学运算的静态方法

Math.abs()
Math.seil()// 大于( )的最小整数

Random类(java.util)
是在指定取值范围内生成随机数字

3.包装类
(1)类型和作用

基本类型   对应包装类
byte        Byte
char       Character
int        Integer
short      Short
long       Long
float      Float
double     Double
boolean    Boolean

可以将基本的数据类型包装为引用类型的对象

(2)装箱和拆箱概念
装箱:将基本的数据类型的值转为引用数据类型
拆箱:将引用数据类型的对象转为基本数据类型。

(3)常用方法

static Integer valueOf(int i)
**返回保存指定的int的值的Integer实例**
intValue()
**将Integer类型的值以int类型返回**

(六)集合类
集合类框架
2.Collection 接口
(1)常用方法;

(2)与 Collections 类的比较
Collection接口是一个集合接口,提供对集合对象进行基本操作的通用接口方法。
Collection类是一个包装类,包含各种有关集合操作的静态方法,不能实例化。

3.List 接口
(1)特点和常用方法;
特点:存取有序的集合,有索引值,元素可重复。

(2)ArrayList 与 LinkedList 的比较(案例:KTV 点歌)
ArrayList基于动态数组集合,LinkedList基于链表的集合;
ArrayList允许保存所有元素(包括Null),可根据索引位置对集合进行快速访问。而对于随机访问集合中的对象来说LinkList效率较低。
ArrayList向集合中指定位置插入对象或删除元素速度较慢,LinkList需要插入和删除对象时,效率较高。

(3)Iterator 接口作用
用于迭代访问(遍历)Collection中的元素。

4.Set 接口
(1)特点和常用方法;
特点:无序,不可重复。
实现类:

add(object obj);    // 添加方法
addAll(Collection c);  //

remove(Object obj);   //删除
contains(Object obj); //查询

(2)TreeSet 与 HashSet 的比较(案例:用户注册)
TreeSet是二差树实现的,Treeset中数据自动排序,不允许null值
HashSet由一个hash表实现,元素无序,只能放一个null。

5.Map 接口
(1)特点和常用方法;
特点:
键不可重复,值可重复
键值一一对应
靠键维护他们的关系

(2)TreeMap 与 HashMap 的比较(案例:洗牌发牌)
TreeMap基于红黑树实现,支持排序功能;
HashMap基于hash表实现,用于快哦苏保存,查找数据。
HashMap中元素无序;
TreeMap所有元素有一固定顺序。
HashMap和TreeMap不是线程安全的。
HashMap继承AbstracrMap类,确保两相等映射返回值相等;
TreeMap继承SortedMap类,保持键有序。

6.泛型的作用
(参数化类型)限定方法操作的数据类型。

(七)chap07 I/O 操作
1.I/O 流分类
(1)输入流和输出流;
(2)字节流和字符流
2.字节输入流输出流
(1)子类;
(2)常用方法;
(3)文件拷贝;
(4)字节缓冲流
3.字符输入输出流
(1)子类;
(2)常用方法;
(3)字符缓冲流;
(4)转换流
4.File 类 (1)构造方法;
(2)常用方法

Java简述题

1.简述类的三大特性。
封装性:就是把同一类事物的共性(包括属性和方法)归到同一类中,方便使用。
继承性:描述的是类与类之间的关系,通过继承,可以在无需重新编写原有类的情况下对原有类的功能进行扩展。
多态性:指在一个类中定义的属性和方法被其他类继承后,它们可以具有不同的数据类型或表现。

2.简述抽象类和接口的区别。
一个类中包含了抽象方法,则必须用abstract修饰,这为抽象类,不可被实例化。
一个类中所有方法都为抽象的,则可定义为接口,由常量和抽象方法组成的特殊类。

3.简述static,final,abstract。
static:静态的,修饰变量,方法,类。
修饰内部类,成为静态内部类
修饰方法,成为静态方法(类方法),可通过类名.静态名
修饰变量,成为静态变量(类属性),可通过类名.静态属性访问

final:最终的,修饰类,方法,变量。
修饰的类不可被继承
修饰的方法,不可被覆盖
修饰的变量,只有一次赋值,常量的定义

abstract:抽象的,可修饰类,方法。
修饰的类成为抽象类,抽象类不能被实例化,必须继承后才可以实例化
修饰的方法为抽象方法,只有方法声明,没有方法的实现。

4简述重载和重写的区别。
重载:允许在一个程序中定义多个名称相同的方法,但是参数类型和个数不同。
重写:子类重写父类的方法,子类对象调用父类方法时,优先调用重写方法,原则是子类与父类被重写的方法有相同的方法名,参数列表及返回值类型。

5.简述jdk,jre,jvm。

6.简述多态的概念。
多态是指一种定义,多种实现。多态包括方法的多态和类型的多态。
方法的多态包括方法的重载和覆盖。类型多态指的是父类引用指向子类对象。

7.定义数组,多维数组。
静态初始化

int[] arr={1,2,3,4}

多维:

int[][]arr= new int [3][4]

int[] x = new int[100]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值