假期学习记录和总结


知识点为我所了解,不保证完全正确

  考试结束后,闲的无聊,不想打游戏,于是开始写代码.写了个 剪刀石头布 的小游戏.虽然没做到我想要的结果,但还不错.

  在这个小游戏制作过程中,我复习了上次Java实践的一些知识点,不知道东西就百度和问群友.这就是所谓的面向百度编程.有空我会上传到我的 Github (已上传)或者码云

  在这之前我还为我的红警写了一个简单的文件删除工具.

知识点

  1. 重写JPanel使之可以带背景图片,再次改写使之可以为后面切换背景做铺垫

    1
    2
    3
    4
    5
    6
    @Override  
    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());
    }};
  2. 了解了一点画布概念

  3. 获取当前时间System.currentTimeMillis()

  4. 每隔多少时间执行一次

    1
    2
    3
    4
    5
    6
    Timer timer=new Timer(false);
    timer.schedule(new TimerTask() {
    public void run() {
    代码;
    }
    }, 0, 2000);
  5. JFrame设置大小时要注意包含边框

    1
    2
    3
    4
    5
    6
    7
    System.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);//高
  6. 浏览器打开指定链接

    1
    2
    Desktop desktop = Desktop.getDesktop(); 
    desktop.browse(new URI("https://space.bilibili.com/20837528"));
  7. 文件选择器

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    JFrame frame = new JFrame();
    // 创建一个默认打开用户文件夹的问价选择器
    JFileChooser chooser = new JFileChooser();
    int flag = chooser.showOpenDialog(frame);

    //若选择了文件,则打印选择了什么文件
    if (flag == JFileChooser.APPROVE_OPTION) {
    System.out.println("用户选择了文件:" + chooser.getSelectedFile());

    }
  8. 对于路径这些,打包要注意.jar包里读文件没学会实在太难了

  9. 通过File获取当前路径

    1
    2
    3
    4
    5
    6
    File directory = new File(".");
    try {
    System.out.println(directory.getCanonicalPath());
    } catch (IOException e) {
    e.printStackTrace();
    }
  10. 一些监听器,一些小知识点

  11. 这个真不能保证对,主要我没学透,而且有好多不同的图.个人感觉这张是比较对的

    JFream.png

​   假期中还学了一些其他的.JFrameJPanel的进一步了解.学习了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的笔记写成博客

最后祝您生活愉快