假期学习记录和总结
一
考试结束后,闲的无聊,不想打游戏,于是开始写代码.写了个 剪刀石头布 的小游戏.虽然没做到我想要的结果,但还不错.
在这个小游戏制作过程中,我复习了上次Java实践的一些知识点,不知道东西就百度和问群友.这就是所谓的面向百度编程.有空我会上传到我的 Github (已上传)或者码云上
在这之前我还为我的红警写了一个简单的文件删除工具.
知识点
-
重写
JPanel
使之可以带背景图片,再次改写使之可以为后面切换背景做铺垫1
2
3
4
5
6
protected void paintComponent(Graphics g) {
ImageIcon icon = new ImageIcon("src\\rock_paper_scissors\\背景.jpg");
Image img = icon.getImage();
g.drawImage(img, 0, 0, icon.getIconWidth(), icon.getIconHeight(), icon.getImageObserver());
}}; -
了解了一点画布概念
-
获取当前时间
System.currentTimeMillis()
-
每隔多少时间执行一次
1
2
3
4
5
6Timer timer=new Timer(false);
timer.schedule(new TimerTask() {
public void run() {
代码;
}
}, 0, 2000); -
JFrame
设置大小时要注意包含边框1
2
3
4
5
6
7System.out.println("窗口边框上"+jf.getInsets().top);//上
System.out.println("窗口边框下"+jf.getInsets().bottom);//下
System.out.println("窗口边框左"+jf.getInsets().left);//左
System.out.println("窗口边框右"+jf.getInsets().right);//右
System.out.println("内容面板宽度"+jf.getContentPane().getSize().width);//宽 jf.getContentPane()好像可以不加
System.out.println("内容面板的高度"+jf.getContentPane().getSize().height);//高 -
浏览器打开指定链接
1
2Desktop desktop = Desktop.getDesktop();
desktop.browse(new URI("https://space.bilibili.com/20837528")); -
文件选择器
1
2
3
4
5
6
7
8
9
10JFrame frame = new JFrame();
// 创建一个默认打开用户文件夹的问价选择器
JFileChooser chooser = new JFileChooser();
int flag = chooser.showOpenDialog(frame);
//若选择了文件,则打印选择了什么文件
if (flag == JFileChooser.APPROVE_OPTION) {
System.out.println("用户选择了文件:" + chooser.getSelectedFile());
} -
对于路径这些,打包要注意.
jar
包里读文件没学会实在太难了 -
通过
File
获取当前路径1
2
3
4
5
6File directory = new File(".");
try {
System.out.println(directory.getCanonicalPath());
} catch (IOException e) {
e.printStackTrace();
} -
一些监听器,一些小知识点
-
这个真不能保证对,主要我没学透,而且有好多不同的图.个人感觉这张是比较对的
二
假期中还学了一些其他的.JFrame
和JPanel
的进一步了解.学习了Git和Github,并注册了Github账号,而且在Github上搭建静态博客.学习了MarkDown语法.学习了Java的一些小知识点(好像没记住).进一步学习了集合和IO流.简单学习了数据库.进一步学习JDBC.模仿使用了Test.使用了c3p0.使用了beanutils.使用了dbutils.进一步学习了MySQL.进一步学习了HTML.学习lCSS.学习JavaScript.进一步学习了JavaWeb.进一步学习了socket编程.简单了解了设计模式.了解JAVA新特性,即拉姆达表达式和函数式接口.学习了计算机二级的MS Office.学习了idea和eclipse的一些快捷键.
有空我会把 MySQL的笔记, HTML的笔记 ,CSS的笔记, JavaScript的笔记写成博客