JAVA学习大纲.docx
- 文档编号:9326451
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:18
- 大小:83.10KB
JAVA学习大纲.docx
《JAVA学习大纲.docx》由会员分享,可在线阅读,更多相关《JAVA学习大纲.docx(18页珍藏版)》请在冰豆网上搜索。
JAVA学习大纲
1、第一节JAVA概念与JDK的安装
(1)JDK的安装和环境变量的设置;
(2)相关基本概念:
JDK、SDK、JRE、JVM、J2SE、J2EE、J2ME、javaAPI、JAVA语言特点;
(3)一个简单的HelloWorld简单示例;
(4)javac.exe、java.exe、appletviewer.exe的作用、使用;
(5)基本输入输出应用
•importjava.util.Scanner;
Scanners=newScanner(System.in);
floatx=s.nextFloat();//s.nextLong();
System.out.print("x="+x);
2、第二节基本类型与复合类型概念、数组
(1)JAVA的八种基本类型:
boolean、char、byte、short、int、long、float、double
基本型
boolean
byte
char
short
int
long
float
double
包装类
Boolean
Byte
Character
Short
Integer
Long
Float
Double
注:
包装类介绍在5.8.1节(P143)
•整型常量默认为:
int;浮点常量默认为:
double;
intx=123(√)floatx=123.4(Χ)
longx=123(√)doublex=123.4(√)
(2)基本类型与复合类型的区别;基本类型变量与引用类型变量的区别;(举例说明)
(3)数组的声明、创建、初始化
•例:
int[]x;//声明//声明时一定不能在[]中写入数字
x=newint[10];//创建
x[0]=1;//初始化
•通过初始化创建数组:
String[]names=newString[]{“kack”,”wang”,”zhang”};
String[]names={“kack”,”wang”,”zhang”};
•二维数组
int[][]x;//声明
x=newint[3][];//创建
x[0]=newint[4];//初始化
(4)数组是类对象,其数组长度在创建时确定,可通过[数组名.length]获取到数组的长度
3、第三节类特征、定义、构造方法、实例化
(1)面向对象的三大特征:
封装、继承、多态
•封装:
解决了数据的安全性问题
•继承:
解决了代码的重用问题
•多态:
解决了程序的扩展问题(编译时多态-重载;运行时多态)
(2)类与对象的概念
(3)类的结构(成员变量、成员方法)和类的定义
class类名
{}
(4)什么是构造方法及作用
•方法名和类名相同
•只能通过new调用,用来创建类对象
•构造方法不能有返回值,不写void
4、第四节包、访问权限、继承
(1)包的定义与使用
•定义:
package包名;
•使用:
import包名.类名;import包名.*;
(2)四种访问权限private、default、protected、public
同一个类
同一个包
子类
全局
private
√
default
√
√
protected
√
√
√
public
√
√
√
√
说明:
类仅可以用public、default修饰;成员可以全部用来修饰;
(3)类的继承:
classAextendsB{}
•只单继承,不能多重继承
•省略extendsB时,默认继承于Object
•父类的构造方法、private修饰的成员都不能被子类继承
•实例化子类对象时,先要执行父类的构造方法,然后再执行子类的构造方法。
因此,当父类具有带参数的构造方法是,一定注意保留其不带参数的构造方法。
5、第五节this、super的含义,重载与重写
(1)this与super的使用
this:
代表当前类;super代表父类/父类构造方法;
(2)方法的重载
•类中多个方法:
名相同,参数不同(个数、类型、顺序)
•实现了JAVA的编译时多态(多态的两种方式之一)
(3)方法重写(overriding)
•指子类重写父类的成员方法;其方法名、返回值、参数列表必须完全一致。
•注意和方法重载的区别
(4)运行时多态
•上溯造型:
将子类类型转换为父类类型(安全)
例:
动物:
猫、狗、猪,都为动物,但叫声不同
•下溯造型:
将父类类型强制转换为子类类型(不安全)
(5)类型测试运算符:
instanceof
用法:
if(A对象instanceofB类){}
(6)Object.equals(Objectb)与==的区别
•equals比较的是对象的内容(String、Date、File、Interger、Long)
•但Object最早是用来比较是否指向同一个对象,只是后来被他们重写了,比较两个对象是否指向同一个地址
6、第六节static、final的使用,抽象类与接口
(1)static(静态)
•用static修饰的变量或方法称为类变量、类方法,即静态变量和静态方法;
•一个类的所有对象共享同一个类变量、类方法,即静态变量和静态方法;
•静态成员(即静态变量和静态方法),不用实例化就可以使用(类名.静态成员);
•静态方法中不能引用非静态的变量或方法,因此静态方法中不能出现this;
•子类不能重写父类的静态方法,但可以去掉static重写(不是真正的重写),可以将父类的静态方法隐藏
(2)final(最终)
•用来修饰类:
类不能被继承;
•用来修饰方法:
方法不能被重写;
•用来修饰变量:
变量只读;定义时赋初值,或在构造方法中附初值;
(3)抽象类
•抽象类:
用关键词abstract修饰的类为抽象类;
•抽象方法即:
由abstract修饰,只提供方法声明而不提供方法实现;
•抽象类中可以有抽象方法也可以没有抽象方法;
abstractclassC
{
abstractvoidaaa();//抽象方法
voidbbb(){}//非抽象方法
}
•抽象类不能创建实例;必须通过子类继承并实现其全部抽象方法后方可创建实例;
(4)接口
•并非类,可以多重继承,可包含常量定义和方法定义两部分,其所有方法不能有方法体;
•接口声明:
[public]interface接口名[extendssuperinterface1,superinterface1…]
publicinterfaceFlyer
{
intNO=1001;
publicvoidtakeoff();
publicvoidland();
publicvoidfly();
}
//其中常量默认具有public、final、static属性;方法默认具有public、abstract属性
•接口实现:
即在类中写出接口的所有方法的实现;
publicclassAirPlaneimplementsFlyer
{
publicvoidtakeoff(){实现代码}
publicvoidland(){实现代码}
publicvoidfly(){实现代码}
}
7、第七节图形界面及事件
(1)概念:
GUI、AWT、Swing
•GUI与AWT的含义;
•AWT与Swing的区别;
•什么是组件(Label、Button、TextArea、Panel、Frame…);
•什么是容器(Panel、Frame…);
•如何创建一个基本的Windows(GUI)应用程序;
(2)布局管理器
每个容器都可以设置为以下的任一种布局管理
•FlowLayout:
流式布局
•BorderLayout:
边界布局
•GridLayout:
网格布局
•CardLayout:
卡片布局
•GridBagLayou:
网格包布局
(3)事件处理
•什么是事件、事件源、事件处理器
•实现思路:
定义事件类-->注册事件到组件上
•常见事件处理接口及其方法
事件类
说明
事件源
接口名
方法
ActionEvent
通常按下按钮,双击列表项或选中一个菜单项时,就会生成此事件。
Buttot
List
MenuItem
TextField
ActionListener
actionPerformed
AdjustmentEvent
操纵滚动条时会生成此事件。
Scrollbar
AdjustmentListener
adjustmentValueChanged
KeyEvent
接收到键盘输入时会生成此事件。
Component
KeyListener
keyPressed
keyReleased
keyTyped
MouseEvent
拖动、移动、单击、按下或释放鼠标或在鼠标进入或退出一个组件时,会生成此事件。
Component
MouseListener
mouseClicked
mouseEntered
mouseExited
mousePressed
mouseReleased
WindowEvent
当一个窗口激活、关闭、失效、恢复、最小化、打开或退出时会生成此事件。
Window
WindowListener
windowActivated
windowDeactivated
windowClosed
windowClosing
windowIconified
windowDeiconified
windowOpened
8、第八节Applet
(1)什么是Applet
•是嵌入到网页中通过浏览器执行的JAVA小程序,没有main方法,是基于图形界面的;
•可以使用JDK的appletviewer来运行网页文件;
(2)Applet的定义和使用
•类的定义
importjava.applet.*;
publicclasshellowextendsApplet{
//主要是对父类方法的重写
}
•网页中的调用