04747 Java语言程序设计 ☑️
语法
- 换行/n 、回车/r 、制表 /t
- 方法签名包含 方法名、参数列表、返回类型(不是返回值)
- 静态成员变量是类的所有对象共享的
- switch 不能跟 long 数据类型
- 45&20 的值:转成二进制计算 101101&010100(有 0 则 0)= 100 转成 10 进制 = 4
- 73>>1 的值:转成二进制 1001001,右移 1 位得到 100100 转成 10 进制 = 36
- 25<<1 的值:转成二进制 11001
- 关键字:goto
- 不是关键字:false、main
- 单目运算符:+、-、++、--
基本数据类型
- 将字符串分解成可独立使用的单词 java.util.StringTokenizer
- substring(x,y)字符串截取,只有一个参数表示截取到最后,第二个参数表示截取到 y,不包含 y
- concat() 字符串连接
- boolean(1 位)< byte(1 字节 8 位)<char(2 字节 16 位)<short(2 字节 16 位)<int(4 字节 32 位)<float(4 字节 32 位)<long(8 字节 64 位)<double(8 字节 64 位)
面向对象
- 包装类不能被实例化的 (不能通过new 创建)
- 调用方法使用值传递的方式,形参和实参指向同一地址
- 一个类中允许多个方法使用同一个方法名:方法重载
- 类方法不能直接引用实例变量
- java 的派生机制,子类和父类之间是 is a 的关系,而不是 has a 的关系
- 调用方法使用值传递将基本数据类型的实参传给形参是将实参的值复制给形参
- 直接定义在类的变量:实例变量、定义在类并且通过 static 修饰是类变量、方法内的变量都是局部变量
- 多态是父类定义的属性和方法被子类继承之后可以具有不同的数据类型或表现出不同的行为。
- 面向对象语言概念:抽象、对象、消息、类、继承、多态、动态联编。
- 子类调用父类构造的方法:
集合
- Vector类实例当中存的是类型
IO流
- File对象通过方法获取文件长度
- File 对象只能用来命名文件、查询文件属性和处理目录,不提供读写操作
- 程序需按行输入输出文件的字符流:需要使用缓冲式 BufferedReader、BufferedWriter
- 大多数采用缓冲式输入数据文件的主要目的:用 readLine()方法按行输入字符
- 抽象类 Reader、Writer 处理的是(带了 Stream 的才是字节流)
- new File()再通过
getpath
得到的路径 \my\git\a.java(反斜杠、不带磁盘名称) - 不能用于文件随机访问 readInteger(readChar、readLong、writeChars)
- int read(byte []b, int off, int len)的返回值是读取的字节数
- 一次从文件中读一行数据使用 BufferedReader 的 readLine()方法
- IO 包的四个基本抽象类:
异常处理
- 在java当中必须处理的异常
- 受检异常包括:IO、SQL、ClassNotFound、FileNotFound、NoSuchMethod
- 运行时异常:NullPoint、ClassCase(类强制转换)、IndexOutOfBounds、Arithmetic(数字运算)
多线程
- 由挂起状态->可运行状态的方法
- 从阻塞状态->就绪状态 :自动恢复 、resume()、notify 或 notifyAll 通知恢复
- 强制终止线程的方法
- 对象互斥锁 是对的操作
- 线程优先级级别最低的数字
- Thread 中 3 个线程优先级静态量
NORM_PRIOPLTY
、MAX_PRIOPLTY
、MIN_PRIOPLTY
(普通、最大、最小) - Runnable:先实现接口。在类内实现run()方法;并在类内声明线程对象,在init(),方法或start()方法中创建新线程,并在start() 方法中启动新线程
- 线程死亡的原因:执行完毕、遇到异常
- 线程的组成部分(执行的代码、处理的数据、虚拟 CPU)不属于(入口和出口)
网络
- URL 对象 url 获取到 URLConnection 对象,url 需要调用 openConnection()方法
InteAddress
类- getByName
得到InteAddress
实例 - getHostName 获取域名
- getHostAddress 获取 IP
- getLocalHost 本地域名
- getByName
数据库
- Connection 类是用来表示与数据库的连接
- Statement 类是用来创建 SQL 语句对象
- DriverManger 类是用来处理驱动程序加载和建立数据库连接
GUI 图形化
- JComboBox 构造:(Object [] items)创建可选组合框
- 创建自定义图形,由 JPanel 派生一个新类,重写父类 方法
- paint 方法的参数类型是 Graphics
- JLabel 上既可以有文本也可以有图标
- JDialog 对象能够指定布局管理器
- JFrame 的子类能用来创建框架窗口
- AudioClip 用来播放音频
- 只有
Jpanel
及其子类 JApplet 才能直接把组件加入进来(默认布局是 FlowLayout) - 程序的子窗口设定一个字符串 s 指定的名字,采用 super(s)
- FlowLayout 布局组件排列顺序 从左到右
- 能直接添加组件的 Swing 容器:JPanel 及其子类 JApplet
- 菜单(三级定义)菜单条->菜单->菜单项
- 菜单栏构造方法的名字:JMenuBar
- 设置异或绘图模式的方法:setXORMode()
- MouseListener 接口只能处理的鼠标事件:按下、释放、点击、进入、退出()
- mousePressed
- mouseReleased
- mouseEntered
- mouseExited
- mouseClicked
- 顶层容器:
JFream
、JApplet、JDialog、JWindow - 文字字型三要素:字体、风格、字号
- 创建文字的构造 Font(string name, int style, int size) 宋体 加粗 12
- java.awt.event 包包含:源对象、监视器对象、事件对象
- JFileChoose 来实现打开和保存文件对话框,用户通过文件对话框不能
- getSelectedFile 获取文件对象(顺序就是这三个的排序,先获得文件对象)
- getName 获取文件名称
- getPath 路径
- 文件对话框按下关闭按钮,返回的整数值
- JFileChooser.CANCEL_OPTION:按下撤销按钮
- JFileChooser.APPROVE_OPTION:按下保存、打开按钮
- JFileChooser.ERROR_OPTION:异常
- GraphicsD 用来填充效果的方法 setPaint
setStroke
线的粗细setTranform
变化setClip
裁剪
- Graphics2D 类中绘制线段的类 Line2D