Java总结

[align=left]一、Java基础内容
1、安装JDK并配置环境变量
安装名为“jdk-6u19-windows-i586”的软件,配置其OS变量。右击我的电脑,选择属性。在弹出的界面中点击高级,单击环境变量,双击“变量”列值为“path”的一行,在变量值对应的输入框最后面输入一个分号,再输入JDK安装的目录加上其下面一个bin目录,即可。
2、编写源代码
编写程序时,首先要定义一个类,类名只能由数字、字母还有下划线组成,且需要和文件名一致,类名的首字母要大写。一个程序需有一个主函数。程序中的所有字母和符号都必须是英文输入法下的。
一个Java的文件下可以定义多个类(包括内部类)。类包括属性和方法。属性名和方法名的定义要求一样。二者除了首字母不能大写外,其余的都和类名的要求一致。而常量名命名时,则要求字母全都大写。
3、运行程序
编译:javac+空格+文件名.java
运行:java+空格+文件名
4、Java中的数据类型
Java中的数据类型分为两大类,基本数据类型和引用类型(类类型或对象类型)基本数据分为八种分别为:字节型 byte、整形 int、短整型 short、长整形 long、字符型 char、浮点型 float、双精度 double、布尔型boolean。引用类型包括系统已定义的类和编写程序是自定义的类。
5、String的常用方法
String是Java中的一个类,而并非基本数据类型。其常用方法有,判断两个字符串是否相等、获取字符的长度、只取得其中的字符、去掉前后空格、取得字符在字符串中第一次出现的索引、判断一个字符串是否以另一个字符串结尾等。

二、类与对象
1、类的定义
类是Java中OOP的基本单位,是具有相同行为和相同特征的对象抽象。其定义格式如下:
public class 类名{
限定符 数据类型 属性名;
…………
public 返回值类型 方法名(形参列表){方法体}
…………
}
2、对象的定义
对象是类的实例化。通过类创建对象,调用对象的方法。
创建对象格式:
类名 对象名=new 构造方法
3、方法的分类:
根据方法的返回值,分为有返回值和无返回值两种。
根据参数,分为有参数和无参数两种
4、方法的重载:
Java语言中,定义类时可以实现方法重载。如果要方法重载,必须在一个类中, 且方法名必须相同。但方法的形参列表却不能相同,即参数个数或参数类型不相同。
5、构造函数:
构造函数是类的一个方法,它的函数名必须和类名完全相同。创建一个类的对象时,就必须用new关键字和构造函数来创建。
编写程序时,定义一个类后,系统会提供一个默认的构造函数,此构造函数是不带参的。如果定义了一个新的构造函数,则默认的构造函数就无法使用了。
构造函数没有返回值类型,普通函数则必须有返回值类型。
6、值传递和引用传递:
值传递主要运用于java的基本数据类型,java中有八种数据类型。而值传递只是将目标变量中的值拷贝一份再存入新的变量中。变量传值后,修改其中任何一个,都不会影响其他的变量的值。
引用传递,其本质是传地址。用于用class定义的类中,即将目标对象名中存储的地址拷贝到新的对象名中。所以将一个对象名的属性的值改变后,即将这个地址所指向的内存中所存储的都改变了。当调用其他的对象名时也会改变。
7、This关键字的作用:
定义类时,当属性名和形参名相同时,就可以使用this关键字来区分。有this的表示属性,没有的表示为参数。

三、类的继承
1、类继承的实现和作用
继承可以实现代码再次运用而不需要重新编写。继承后可以得到上一个类的属性和方法。
继承格式:
public class 类A extends 类B{}
通过继承,子类可以继承父类的全部属性和方法,但调用时只能调用用public修饰的属性和方法。
2、方法的重写
方法重写继承时出现,在子类中重写父类的方法。重写时方法的定义一样,仅仅是重写方法体。
3、自动转型
一个子类对象的类型可以自动转成父类的类型,但反之则不行,若想将父类对象转换成子类对象,则必须使用强制转换。
优点:提高效率,减少代码长度。
缺点:不能调用子类的特定方法。
4、多态
用于继承和重写机制,相同类型的对象,调用相同的方法,得到的结果可能不一样。
5、接口
根据类的继承规则,即使子类中不重写父类的方法,也会需要调用;但在特定的用途上,会要求子类必须重写父类的方法,这就需要定义接口。
接口的定义是用interface。接口中定义的方法只有返回值类型,方法名,参数表,不能有方法体。接口中的方法都是public型的。
接口中可以定义属性,但其定义的属性都是常量值,不可再改变。
实现接口时,用implements关键字。一个类可以实现多个接口。
6、抽象类
抽象类介于接口和类之间,是类和接口的集合体。但和类与接口仍有许多不同点,类可以创建对象,但抽象类不可以,抽象类可以继承类和接口,但接口只能继承接口抽象类中可以定义已经实现的方法,也可以定义未实现的方法,但此时需要加上abstract关键字,且继承的子类中必须实现。
定义抽象类的格式:
public abstract 抽象类名 extends 类名 implements 接口名{
public abstract 返回值类型 方法名(参数列表);
}

四、Java的图形界面和事件
1、Java的图形界面
Java的图形界面有两套,分别为swing和awt。awt是抽象窗口组件道具包,是 jsp网络开发最早的用于编写图形节目实际运用程序的DEV包。Swing 是为了解决 awt存在的难点而新DEV的包,它以awt为基础的。Swing 是在awt的基础上构建的一套新的图形界面系统,它比awt更标准。它实现了awt所能够实现的所有功能,并对awt的功能进行了大幅度的扩充。
所有的图形界面都是从Object类中继承的。
2、事件
事件步骤:寻找事件源;给事件源添加监听器方法;重写监听器类;创建监听器类的对象,并绑定到事件源的监听器方法中。
常用的监听器有:动作监听器 ActionListener、鼠标监听器 MouseListener、鼠标拖动监听器 MouseMotionListener、鼠标的适配器 MouseAdapter、鼠标滚动监听器 MouseWheelListener等。
ActionEvent:实现 ActionListener 接口的对象在发生事件时获得此 ActionEvent动作所得到的事件源的信息。
MouseEvent:MouseEvent就是获取鼠标所得到的事件源的信息。

五、数组和队列
1、数组
数组也是Java中的一种数据结构,可以看成一种对象,其本身的类型就是数组类型,所以定义一个数组时所用语句和定义一个类的对象相似,都需要使用new关键字。
定义格式:类型[] 数组变量名=new 类型[长度];数组定义时可以不指明长度,但这时一定要给其赋初值。否则会发生发生可能会发生空指针异常。
通常是用下标来操作数组中的每一个元素,数组中只有一个属性,即length属性。可以通过length属性获取数组的长度。
多维数组的创建方法和一维数组大致相同。即:
数据类型 [][] 数组名 = new数据类型[行][列];
获取行的总数格式:数组名.length;
获取列的总数格式:数组名[行].length;
数组的缺点:不能随意改变数组的大小。
2、队列
队列是一种数据结构,其本质还是数组。但它可以使数组中的对象实现增长,删减,查找,修改指定位置元素等。队列的增长和删减,其实质就是定义一个新的数组,将原数组中需要的元素copy过来,再将首地址赋过去即可。
3、泛型
泛型是程序设计语言的一种特性。允许程序员在强类型程序设计语言中编写代码时定义一些可变部份,那些部份在使用前必须作出指明。数组必须是Object的类型,因为Object是所有类的父类,才能在构造队列时换成任意的类,才能达成泛型的目的。

六、重绘
重绘的关键是数据的封装。
重绘的目的是将记录下来的东西重新绘制到屏幕上,那首先就是要能将数据封装记录下来,可以利用数组,队列等数据的记录方式。其次是重写JFrame类中的paint(Graphics g)方法。

七、五子棋
五子棋中并没有什么新的内容,是将之前的内容的综合。
五子棋的棋盘和棋子都是画在窗体的界面上的。所以需要重绘。重绘棋子时就需要用数组或队列来封装数据。然后是鼠标触发事件,即点击时判断该点是否已下了棋子,若无则了可以下。之后是算法分析是否五子连珠,判断输赢。人机对战的五子棋只需加上人机算法即可。[/align]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值