期末课程总结

转眼间,这个学期就要过去了,我们Java的学习也接近了尾声,回想到这个学期刚开始接触到Java的时候,感觉什么都不懂,但现在似乎有了门路,不会载懵懵懂懂,

虽然本学期面向对象与Java程序设计课程已经全部结束了,但Java程序设计的学习还远未到终点,我们对Java的学习还要继续,所以在接下来的两三周里,努力做好

Java课程设计,坚持做好,把Java学好。在前面的每一周我们都有每一周的总结,下面我把我们这个学期所学的内容再一次简单规划一下:

this关键字 :

在构造器中,代表该构造器所创建的实例对象。
在方法中,指调用该方法的对象。
在流离块中。只流离块所属的类的实例t

static关键字:

属性有共享性,还可以声明函数,比如Mian方法public static void main(String args[])

继承,抽象类,接口

extends关键字,用于子类继承父类,并用super可以从子类中调用父类中的构造方法
还有覆写和重载的关系,覆盖用于子类和父类中,而重载在同一个类当中,
abstract:用abstract定义的抽象方法,其类也必须要用抽象定义,
interface接口类的定义,父类接口需要用interface定义,而子类接口父类要用implements。
接口与抽象类的关系
区别点 抽象类 接口
定义 包含一个抽象方法的类 抽象方法和全局变量的集合
组成 构造方法、抽象方法、普通方法、常量、变量 常量、抽象方法
使用 子类继承抽象类(extends) 子类实现接口(implements)
关系 抽象类可以实现多个接口 接口不能继承抽象类,但允许继承多个接口
常见设计模式 模板设计 工厂设计,代理设计
局限 抽象类有单继承的局限 接口没有单继承的局限
实际 作为一个模板 是作为一个标准或不是一种能力
对象 都通过对象的多态性产生实例化对象 都通过对象的多态性产生实例化对象
选择 如果抽象类和接口都可使用的话,优先使用接口,因为避免单继承的局限 如果抽象类和接口都可使用的话,优先使用接口,因为避免单继承的局限
特殊 一个抽象类中可以包含多个接口,一个接口中可以包含多个抽象类 一个抽象类中可以包含多个接口,一个接口中可以包含多个抽象类

异常

异常的处理方式

try
{
//有可能出现异常的语句
}
catch(异常类 异常对象)
{
//编写异常的处理语句
}
finally
{
//一定会运行的代码
}

不管出现什么异常都可以用Exception来处理异常对象。

throws和throw关键字

throws声明的方法此方法不处理异常
throw是抛出一个异常,抛出时直接抛出异常类的实例化对象

线程

线程共分为两大类 继承Thread 以及 实现Runnable接口。

取得线程名称:Thread。curentThread().getNane()
判断线程是否启动 isAlive();
线程强制运行 join();
后台线程 setDaemon();
最高级 MAX—PRIORITY
线程的优先级 最高级 NORM—PRIORITY
最低级 MIN—PRIORITY
线程的礼让 yield()

同步代码块synchronized关键字

synchronized(同步对象){        ///synchronized(this)this表示当前对象
需要同步的代码块;
}

java.io*,数据流

File f = new File(文件名);//声明File对象
(Output)(Input)Stream (out)(input) = null; //准备好输出的对象
(out)(input) = new File(Out)(In)putSTream(f); //对象进行实例化
(out)(input) = new File(Out)(In)putSTream(f,true) //在末尾加东西

字节输出流:OutputStream

byte b[]=str.get.Bytes();    //用Byte把输出的内容保存
out.write(输出对象);
out.close();//关闭文件

字节输入流 InputStream

byte b[]=new byte[1024];    //用Byte保存输入内容
input.read(输入对象)
input.close(); //关闭文件

记事本相关内容

引用AWT,SWing相关数据包,

JFrame 基本窗体,JLalel标签组件 JButton 按钮组件

frame.setVisible(true)显示窗体

布局管理器

FlowLayout 流式布局管理器
f.setLayout(new FlowLayout(FlowLayout.CENTER,3,3); BorderLayout 将窗体表面化为东南西北中
f.setLayout(new BorderLAyout(3,3));
f.add(new JButton("东(east)"),BorderLayout.EAST);
f.add(new JButton("西(west)"),BorderLayout.WEST);
f.add(new JButton("北(north)"),BorderLayout.NORTH);
f.add(new JButton("南(south)"),BorderLayout.SOUTH);
f.add(new JButton("中(center)"),BorderLayout.CENTER); GridLayout 表格布局管理器
f.setLyout(new GridLayout(Height,width,3,3);
需要注意的事无论按钮多还是按钮少横轴是不会变的,都是竖轴在改变

CardLayout 将一组组件重叠地进行布局,每次只展示一个画面

通过card.next(cont); 进行下一个界面切换

绝对定位

提供一个坐标进行精准布局

f.setLayout(null); 使用绝对定位

其他组件

JPanel 经常用到的容器之一,可以使用JPanel完成各种复杂的界面,在JPanel中可以加入任意组件,然后直接吧JPanel加入到JFrame中
public Jpanel(LayoutMannger layout) 创建一个指定布局管理器的JIPanel对象 JSplitPane 主要功能是分割面板,可以将一个窗体分为两个子窗体,可以是水平排列也可以是垂直排列,
ifsplit = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,组件一,组件二);
ifsplit = new JSplitPane(JSplitPane.VERTICAL_SPLIT,组件一,组件二); JTabbedPane 是在面板上设置了一个多项卡供用户选择
常用方法
JTabbedPane tab = new JTabbedPane(JTabbedPane.TOP) //设置标签在顶部显示
JTabbedPane tab = new JTabbedPane(JTabbedPane.BOTTOM) //设置标签在底部显示
JTabbedPane tab = new JTabbedPane(JTabbedPane.LEFT) //设置标签在左部显示
JTabbedPane tab = new JTabbedPane(JTabbedPane.RIGHT) //设置标签在右边显示 JScrollPane 一般的图形界面如果显示区域不够大,就可以通过用JScrollpane设置滚动条
static final HORIZONTAL_SCROLLBAR_ALWAYS 始终显示水平滚动条
static final HORIZONTAL_SCROLLBAR_NEVER 任何情况下都不显示水平滚动条
static final HORIZONTAL_SCROLLBAR_AS_NEEDED 根据自生需要来显示水平滚动条 static final VERTICAL_SCROLLBAR_ALWAYS 始终显示垂直滚动条
static final VERTICAL_SCROLLBAR_NEVER 任何情况下都不显示垂直滚动条
static final VERTICAL_SCROLLBAR_AS_NEEDED 根据自生需要来显示垂直滚动条 JTextFiled jtf=new JTextFiled(); 设置文本框
JPasswordField jpf=new JPasswordField(); 设置密码类型文本框

事件监听

窗体事件监听WindowListener

动作事件监听ActionListener

键盘事件监听KeyListener

鼠标事件监听MouseListener

public Object getSource() 返回事件监听的对象

arg0.getSource instanceof 组件 判断事件触发源是否一致

记事本菜单组件

菜单容器JMenuBar

public JMenuBar() 构造方法创建JMenuBar对象
public JMenu add(JMenu e) 将指定的JMenu加入到JMenuBar中

菜单JMenu

public JMenu(String s) 创建新的JMenu 并指定菜单名称
public JMenuItem add(JMenuItem menuItem) 增加新的菜单项
public void addSeparator() 加入分割线

菜单项JMenuItem

public JMenuItem(Icon icon) 创建带有图标的JMenuItem
public JMenItem(String text) 创建带有指定文本的JMenuItem
public JMenItem(String text,Icon icon) 创建带有指定文本和图标的JMenuItem

JMenuBar,JMenu,JMenuItem之间一环扣一环,菜单项JMenuItem加到菜单JMenu中,JMenu加到菜单容器JMenuBar中,

JMenuBar加到窗体JFrame中 frame.setJMenuBar(jmb)

文件选择框JFileChooser

public JFileChooser() 指定用户默认目录,在Windows中是我的文档
public JFileChooser(String currentDiretoryPath) 指定文件选择的目录
public File getSelectedFile() 返回选择的文件
public int showSaveDialog(Component parent) 打开保存对话框,返回保存状态
public int showOpenDialog(Component parent) 打开文件选择对话框,返回打开状态

java期末课程总结的更多相关文章

  1. Java期末课程学习汇总。

    本学期面向对象与Java程序设计课程已经结束了,给自己学习来个总结. 本学期过的非常快,不得不说这一学期学到的东西很少,感觉自己的进步很小. 而且感觉自己总少了点什么,在写这篇总结前,我认真想了,很多 ...

  2. 2018年秋季学期面向对象程序设计(JAVA)课程总结

    2018年秋季学期面向对象程序设计(JAVA)课程总结 时值2018年年末,按惯例对本学期教学工作小结如下: 1. 教学资源与教学辅助平台 教材:凯 S.霍斯特曼 (Cay S. Horstmann) ...

  3. java代理课程测试 spring AOP代理简单测试

    jjava加强课程测试代码 反射. 代理 .泛型.beanUtils等 项目源码下载:http://download.csdn.net/detail/liangrui1988/6568169 热身运动 ...

  4. Java语言课程设计——博客作业教学数据分析系统(201521123107 张翔)

    #Java语言课程设计--博客作业教学数据分析系统(个人博客) 1.团队课程设计博客链接 [博客作业教学数据分析系统(From:网络五条狗)](http://www.cnblogs.com/fanta ...

  5. Java面向对象课程设计——购物车

    Java面向对象课程设计——购物车 小组成员:余景胜.刘格铭.陈国雄.达瓦次仁 一.前期调查 流程 客人(Buyer)先在商城(Mall)中浏览商品(Commidity),将浏览的商品加入购物车(Sh ...

  6. 2017-2018面向对象程序设计(Java)课程助教工作职责及分工

    2017-2018面向对象程序设计(Java)课程助教工作职责及分工 一.研究生助教团队名单 张光辉,王玉环,牟巧玲,徐进 二.工作职责与要求 1) 针对所指导学习小组学生,批改课程实验作业每周一次, ...

  7. Java 入门课程视频实战-0基础 上线了,猜拳游戏,ATM实战,欢迎围观

    Java 入门课程视频实战-0基础 已经上传完了.欢迎小伙伴们过来围观 直接进入: http://edu.csdn.net/course/detail/196 课程文件夹例如以下: 1 初识Java  ...

  8. 扎西平措 201571030332 《面向对象程序设计(java)课程学习进度条》

    <2019面向对象程序设计(java)课程学习进度条> 周次 (阅读/编写)代码行数 发布博客量/评论他人博客数量 课余学习时间(小时) 学习收获最大的程序 阅读或编译让我 第一周 20/ ...

  9. 2019面向对象程序设计(java)课程学习进度条

    2019面向对象程序设计(java)课程学习进度条 周次 (阅读/编写)代码行数 发布博客量/评论他人博客数量 课余学习时间(小时) 学习收获最大的程序阅读或编程任务 1 20/10 1/0 5 九九 ...

随机推荐

  1. PHP 网站大数据大流量与高并发 笔记

    前端: 1.域名开启cdn 2.大文件使用oss php: 1.模板编译缓存 服务器: 1.负载均衡 数据库: 1.读写分离 待完善

  2. 特产网站自适应CSS

    下面是一个特产网站自适应CSS,这个特产自适应CSS通过屏幕宽度大小来进行适应的,而不是根据UA来判断,就加快了判断的速度,所以速度很快 中国特产站排名还是很好的,特别是手机端 li { list-s ...

  3. el-table + el-form实现可编辑表格字段验证

    表格输入信息很常见,因此表格的验证也很必要,el-form提供了输入框验证.可以和表格结合起来用,使用效果     HTML: <div class="table_box"& ...

  4. 获取图书isbn信息 共享图书开发 图书信息接口开发过程中的心得体会

    最近做一个图书共享的项目,需要用户扫一扫书籍后面的一维码,获取到书籍的isbn号码,然后通过这个isbn号码能够直接获取到这本书的名字.简介.价格.图片等信息. 于是百度搜了下,之前很多的豆瓣的接口, ...

  5. java_day01

    ch01: ===================================== java J2SE 桌面应用的开发 JAVA SE corejava J2EE 企业级开发 JAVA EE J2 ...

  6. linux使用iptable做网关

    首先在能上外网的机器上增加一块网卡 我这里两块网卡配置如下 [root@muban1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 外网卡 DEV ...

  7. C++中写文件ofstream 的<< 操作符 与C风格的fwrite 的笔记

    在某次工作中,调用了某SDK接口,该接口通过一个回调函数返回需要的内容.我们需要的内容是H.264码流,该码流通过一个unsigned char* 变量带回,另外还有一个长度 int length.为 ...

  8. 对于国嵌上学期《一跃进入C大门》Mini2440的代码修正

    摸索了几天,加了无数的群,病急乱投医式地问了好多个人,终于改对了代码. 下面先贴出给的范例代码 这是C语言代码,是没有错的. 那么出错的地方就在start.S部分 很明显,MPLLCON地址错误,正确 ...

  9. zencart批量设置热卖商品 best seller、点击最高最受欢迎产品 most popular

    zencart批量设置某分类下热卖商品数 best seller ; ,,,,,); zencart批量设置某产品点击最高最受欢迎产品 most popular ; ,,,,,);

  10. 【NOI 2019】同步赛 / 题解 / 感想

    非常颓写不动题怎么办…… 写下这篇博客警示自己吧…… 游记 7.16 我并不在广二参加 NOI,而是在距离广二体育馆一公里远的包间打同步赛(其实就是给写不动题找个理由) 上午身体不舒服,鸽了半天才看题 ...