课程总结
一、面向对象的基本概念
面向对象有三个特征封装性,继承性,多态性
类包含状态,行为
对象是具体的
类是抽象的
类实际上是表示一个客观世界某类群体的一些基本特征抽象
类名 对象名称 =null;//声明对象
对象名称 = new 类名()//实例化对象,只要有关键字new就表示开辟新的堆内存空间
栈中存放的是堆空间的地址
对象使用前必须实例化
二、数据类型的转换:从小到大为Byte,short,char为同一级,然后就是int,long,float和double。小到大转换叫自动类型转换,重大到小转换叫强制类型转换,强制转换会导致数据的溢出,所以一般不用。
逻辑运算符:&和&&的用法和区别,&要求所有的条件都判断,所以如果第一个为假,第二个出现编写错误,那么就会报错。而&&不同,如果第一个出现假则后面的条件将不再判断,直接输出假。或运算差不多。
面向对象的程序有3个主要的特征:封装性,继承性,多态性。
类和对象:类表示某类群体的基础特征,对象则表示一个个具体的事物。
三、一般来说程序的结构包括三种:顺序结构、选择结构、循环结构。这三种结构都只有一个入口也只有一个出口。了解了这三种结构的不同,同时明白了这三种结构的使用。
四、1.字符串的连接
public String concat(String str)
该方法的参数为一个String类对象,作用是将参数中的字符串str连接到原来字符串的后面.
2.important语句
有了解在important static静态输入之后比原来的代码输入要更为简洁,不必在System.out.println中键入System。
3.包的概念:
包是java里的文件夹,包是在使用多个类或接口时,为了避免名称重复而采用的一种措施。程序中的关键字为package。
4.对象数组
数组一定要先开辟空间;并且数组里面的每一个对象都是null值,所以在使用的时候数组中的每一个对象必须分别进行实例化。
五、1. 既然this和super都可以调用构造方法,那么两者是不可以同时出现的,因为两者调用构造的时候都必须放在构造方法的首行,另外,需要注意的是,无论子类怎样操作,最终都是要先调用父类中的构造方法。
2.抽象类的定义及使用规则如下:
(1)包含一个抽象方法的类必须是抽象类:
(2)抽象类和抽象方法都要使用abstract关键字声明:(3)抽象方法只需声明而不需要实现:
(4)抽象类必须被子类继承,子类(如果不是抽象类)必须覆写抽象类中的全部抽象方法
3.实际上在一个抽象 类中是允许存在构造方法的,因为抽象类依然使用的是类的继承关系,而且抽象类中也存在各个属性,所以子类在实例化之前肯定是先要对父类进行实例化的。
六、1.instanceof关键字
(1).instanceof关键字的作用:判断一个对象是否属于指定的类别。
(2).instanceof关键字的使用前提:判断的对象与指定的类别必须要存在继承或者实现的关系。
(3).instanceof关键字的使用格式:对象 instanceof 类别
(4).instanceof关键字的作用: 一般我们做强制类型转换之前都会使用该关键字先判断一次,然后再进行转换的。
2.利用interface进行定义,在接口里只有全局常量与抽象方法,并且接口与继承有区别,(继承不能多继承,只能单一继承,而接口可以多个接口)
七、1Object类
2抽象类与接口的关系
3instanceof关键字
对象 instanceof类--> 返回boolean类
八、所有的异常都是从Throwable继承而来的,是所有异常的共同祖先。而Throwable有两个子类,Error和Exception。Exception,是另外一个非常重要的异常子类。它规定的异常是程序本身可以处理的异常。异常和错误的区别是,异常是可以被处理的,而错误是没法处理的。
九、10月21日
要想实现多线程,必须在主线程中创建新的线程对象。线程一般具有五种状态,即创建,就绪,运行,阻塞,终止。
1创建状态
新建一个线程对象可采用Thread类的构造方法实现。
2就绪状态
新建线程对象后,调用该线程的start()方法就可以启动线程。当线程启动时,线程进入就绪状态。此时,线程将进入线程队列排队,
等待CPU服务,这就表明它已经具备了运行条件。
3运行状态
当就绪状态的线程被调用并获得处理器资源时,线程就进入了运行状态。run()方法定义了该线程的操作和功能。
4堵塞状态
5死亡状态。
线程调用stop()方法时或run()方法执行结束后,即处于死亡状态。处于死亡状态的线程不具备有继续运行的能力。
10月23日
想要操作D盘下的test文件,则路径必须修改为“d: est.txt”
d:"+File.separator+"test"+File.separator+demo.txt"
public String[] list ():列出全部名称,返回一个字符串数组。
public File[] listFiles():列出完整路径,返回一个File对象数组。
十、在整个IO包中,实际就是分为字节流和字符流但是除了这两个流之外,还存在一组字节流-字符流的转化类
OutputStreamWriter:是Witer的子类,将输出的字符流变为字节流,即:将一个字符流的输出对象变成字节流输出对象
InputStreamReader:是Reader的子类,将输入的字节流变为字符流,即:将一个字节流的输出对象变成字符流输出对象
bis:内存的输入流
bos:内存的输出流
Character.toLowerCase(c):将字符变为小写
PipedOutputStream管道的输出流
PipedInoutStream管道的输入流
connect连接
字节打印流(PrintStream)
字符打印流(PrintStream)
System.out是PrintStream的对象,在PrintStream中定义了一系列的print()和println()方法
十一、图形用户界面
特征:
图形界面对象及其框架(图形界面对象
之间的包含关系)
图形界面对象的布局(图形界面对象之
间的位置关系)
图形界面对象上的事件响应(图形界面
对象上的动作)
Java图形界面开发的两种技术:AWT
(大量使用Windows的系统函数),
Swing(采用Java实现用户界面,可以
在任意的系统平台上工作)
AWT包工具类
1.组件Component
2.容器Container所有的AWT组件都应
该放到容器中
3.布局管理器Layout Manager
Swing保存在javax.swing包中,所有
的组件都从JComponent扩展出来的
默认对齐方式 左对齐,居中对齐
JLbbel类
更改JLabel的文字样式
使用component类中定义的方法更改使
用的字体。
public void setFont(Font f)
java.awt.Font类
布局管理器
类型:FlowLayout,BorderLayout,
GridLayout,CardLayout,绝对定位。
FlowLayout:流水布局
对齐方式:public static final int ;(常量)
默认对齐为居中对齐且间隔5个像素。
BorderLayout:将版面划分为东南西
北中。public static final String ;(常量)
先在区域中加容器,一般不会加控件让其进
行更复杂的排列
GridLayout:表格形式
使用时需设置显示的行数和列数
留行减列,无论多少按钮首先保证行。
CardLayout:将一组组彼此重叠的组件
进行布局,每次只展现一个界面;
public void * (Container parent)
翻转到*图片
pack:自适应内容。
绝对定位:设置绝对坐标
public void setBounds (int x, int y,int
width,int height)
学会应用用在的地方
十二、其他容器
1.Jpanel
(一)使用JPanel可以完成各种复杂的界
面显示
(二)在JPanel中可以加入任意的组件,
之后直接将JPanel容器加入到JFrame容
器中即可
2.JSplitPane
(一)JSplitPane主要功能是分割面板,
可以将一个窗口分为两个子窗体,可以是
水平排列也可以是垂直排列。
(二)public static final int *_SPLIT
(常量,表示垂直或水平分割)
(三)public JSplitPane() 构造类型,
创建对象指明分割方式...
3.JTabbedPane
JTabbedPane是在一个面板上设置多个
选项卡供用户选择
(一)static final int 表示指向位置
(二)public JTabbedPane(int tabP-
lacement)构造类型 创建对象,并指定
选项卡布局
(三)public void addTab(String title
,,,) 添加一个有标题,图标,的组件
容器上不能直接加图片
4.JScrollPane
在一般的图形界面中如果显示的区域不
够大,就会出现滚动条以方便用户浏览
5.多行文本输入组件:JTextArea
事件处理
1.需求
了解事件的概念
事件的监听及处理
了解常用事件
掌控适配器设计模式在事件监听中的应用
事件和监听器
在Swing编程中,所有的事件类都是EventObject
输入,动作,容器,登录窗体等事件。
2.Java事件处理流程
(一)事件源:发生此事件的源对象
(二)事件监听器:事件的接收对象
3.窗体事件
(一)Window Listener是专门处理窗体
的事件监听接口,窗体的所有变化都可以
使用这个接口进行监听
(二)void window*(WindowEvent e)
4.动作事件及监听处理
(一)ActionListener接口
十三、菜单
使用JMenu组件可以实现菜单
JMenuBar的常用方法
构造方法public JMenuBar()
一般方法public JMenu add(JMenu c)
public JMenu getMenu(int ubdex)
public int getJMenuCount()
新建打开保存关闭
1.jmenuBar组件的主要功能是用来摆放jmenu组件,当监理许多jmenu组件之后,需要jmenuBar组件来将jmenu组件加入到窗口中
2.构建了一个菜单条,但是此菜单中没有选项,需要通过jmenuItem完成
3.菜单实际上属于一个特殊的按钮,那么使用jbutton的时间,就可以处理菜单了
4.完成了四个菜单的选项,定义完成之后,增加快捷键操作
5.在jlist中可以进行时间处理,jlist本身可以是一个列表的形式展示出现
十四、JDBC
Java数据库连接,(Java Database Co-
nnectivity,简称JDBC)是Java语言中用
程序如何来访问数据库的应用程序接口,
提供了诸如查询和更新数据库中数据的方
法。JDBC也是Sun Microsystems的商标
。我们通常说的JDBC是面向关系型数据
库的。
JDBC驱动程序共分四种类型:
1.JDBC-ODBC桥
2.本地API驱动
3.网络协议驱动
4.本地协议驱动
API概述
JDBC API主要位于JDK中的java.sql包中
(之后扩展的内容位于javax.sql包中),
主要包括(斜体代表接口,需驱动程序提
供者来具体实现):
Driver Manager,Driver,Connection,
Statement,PreparedStatement,
CallableStatement,SQLException。
连接方式:
⒈Oracle8/8i/9i数据库(thin模式)
⒉DB2数据库
⒊Sql Server7.0/2000数据库
⒋Sybase数据库
⒌Informix数据库
⒍MySQL数据库
⒎PostgreSQL数据库
⒏access数据库直连用ODBC的