这学期渐渐已经要接近尾声,对于JAVA的学习也慢慢有了很大的进步。
从最开始的创建类,写方法,再到从以前的C语言转换为Java,最深刻的便是以前输入的时候,还一直不能明白。
关于这学期所学到的java知识点,我也做了一个归纳:
1.了解了什么是类,类与对象的关系。类就是定义一个基本的模板,代表着一个共性,是表示一个客观世界某类群体的一些基本体征的抽象;而对象表示每一个具体的东西;
2.了解了Java面向对象的第一大特性封装性,private
3.this:表示当前对象
属性访问:访问本类中的属性,如果本类没有此属性则从父类中继续查找。
方法:访问本类中的方法,如果本类没有此方法则从父类中继续查找。
调用本类构造,必须放在构造方法的首行,不能放在main方法中。
4.static:声明的属性是所有对象共享的,在访问static属性时最好可以由类名称直接调用。
static既可以在声明属性的时候使用,也可以用其来声明方法。
非static声明的方法可以去调用static声明的属性或方法的。但是static声明的方法是不能调用非static类型声明的属性或方法的,当一个方法是static,另一个方法不是static型时,二个方法中的参数不可相加相乘等等。
5.对象数组
类 对象数组名称[]=new 类[数组长度]
数据类型 数组名称[]=null;
数组名称=new 数据类型[长度];
6.继承性:
1)继承格式
class 父类{}
class 子类 extends{}
2)可以通过子类扩展父类
3)只允许多层继承,不允许多重继承。
4)子类不能直接访问父类中的私有操作,但可以通过get方法访问。
5)子类构造方法中的super()。一般写类的时候要构造一个空方法,因为一般子类对象实例化之前会先默认调用父类中的构造方法,如果父类中没有构造方法,就会默认调用一个空的构造方法。 super()就是调用父类构造方法的语句,super也不可放于main函数中。
7.方法的覆写和重载
覆写:就是指子类中定义了与父类中同名的方法,被子类覆写的方法不能拥有比父类方法更严格的访问权限,例如:父类(private)<=子类(private||public)。
重载:同一个类中相同名称不同参数的方法。
8.final关键字(最终)
1)使用final声明的类不能有子类
2)使用final声明的方法不能被子类所覆写
3)使用final声明的变量级成为常量,常量不可以修改
9.抽象类:
抽象类和抽象方法都要使用abstract关键字声明
抽象方法只需声明而不需要实现
抽象类必须被子类继承,子类(如果不是抽象类)必须填写抽象类中的全部抽象方法
10.接口:
一个子类只能继承一个父类,不允许多重继承,但接口可以多重实现
强制转换时,先转换成父类,再强制转换,子类不能直接访问父类的私有操作,可以通过getter和setter间接访问父类的私有操作
使用final定义类时,不能被继承,即使用final声明的类不能有有子类;不能被子类覆写;用final声明的变量即常量,常量不可修改
Interface关键字:接口,接口里只可以有全局常量(每个字母需要大写)和抽象方法
Implements关键字:实现接口。
11.异常:
异常是导致程序中断的一种指令流。
处理:
try{
//有可能出现异常的语句
}catch(异常类 异常对象){
}
throws
使用throws声明的方法表示此方法不处理异常,而交给方法的调用处进行处理
throw
与throws关键字不同的是,可以直接使用throw关键字抛出一个异常,抛出时直接抛出异常类的实例化对象即可。
12.多线程:
Java中多线程的实现主要是通过继承Thread类或实现Runnable接口。其中Runnable接口可以资源共享。但不管使用哪种方法都要通过覆写run();在实例化的时候通过调用start()方法来启动多线程
13.同步方法
synchronized 方法返回值 方法名称(参数列表){
方法体
}
14.文件:
createNewFile(); 创建新文件
delete(); 删除一个指定文件
public String[]list(); 列出全部名称,返回一个字符串数组
public File[]listFiles(); 列完整的路径,返回一个File对象数组
15.内存操作流程:
字节内存流:ByteArrayInputStream(内存字节输入流);ByteArrayOutputStream(内存字节输出流)
字符内存流:CharArrayReader(内存字节输入流);CharArrayWriter(内存字节输出流)
16.AWT(抽象窗口工具包)java.awt
主要包括以下三种工具类
1)组件:Component
2)容器:Container
3)布局管理器:LayoutManager
17.Swing (保存在Javax.swing中)
基本容器JFrame
常用操作方法:
创建一个窗体:JFrame f = new JFrame;
设置窗体大小:f.setSize(int width , int height);
设置窗体背景颜色:f.setBackground(Color.颜色);
设置窗体显示位置:f.setLocation(int x, int y);
显示窗体:f.setVisible(true);
18.布局管理器
1)FlowLayout(流式布局管理器)默认居中按照顺序依次排列
2)BorderLayout 将窗体依次分为东西南北中5个区域
3)GrideLayout 以表格形式进行管理,必须设置显示行数和列数(先满足行,再调列)
4)CardLayout 一组组件彼此重叠进行布局,每次只会显示一个界面
5)绝对布局 通过坐标指定组件放置的位置,窗体大小改变,组件位置也不会改变
19.完善窗体
1)标签组件JLabel,更改JLabel的文字样式,使用到Font类,在JLabel中设置图片,使用Imagelcon类
2)按钮组件JButton,建立一个按钮即new JButton()即可
3)监听:
a.键盘监听
使用KeyListener接口
b.鼠标监听
使用MouseListener接口,其中MouseEvent中有getButton(),getX(),getY()等方法
c.单选钮:JRadioButton及事件处理
d.复选框:JCheckBoxji事件处理JCheckBox();创建文本对象其事件处理也是用ItemListener接口
e.列表框:JList及事件处理
4)菜单组件:JMenu、JMenuBar、JMenuItem可实现简单的菜单外观,使用事件监听可对应作出一些功能的实现
20.MySQL的安装与配置
MySQL的常用命令
1)mysql -u用户名 -p密码 连接mysql数据库
2)创建数据库:CREATE DATABASE 数据库名称;
3)删除数据库:DROP DATABASE 数据库名称;
4)USE 数据库名称; 使用数据库
5)创建数据库表
虽然已经学习了一整个学期,也有了些许小进步,但学习的任务还是任重而道远的。