java之基础知识、零碎知识

MENU

  • java之石头迷阵单击游戏、继承、接口、窗体、事件、组件、按钮、图片
  • java继承中的格式与语法、方法重写、extends、this、super、System、out、println、@Override
  • java学习路程之篇一、知识点、path环境变量、计算机发展史、数据的存储和运算、人机交互、计算机语言
  • java学习路程之篇二、知识点、JAVA背景介绍、配置JAVA_HOME、跨平台、JVM、JRE、JDK
  • java学习路程之篇三、知识点、类、模块、项目、操作、下载、安装、IDEA、开发工具
  • java学习路程之篇四、知识点、注释、关键字、字面量
  • java学习路程之篇五、知识点、变量、标识符、数据类型、Scanner键盘录入
  • java学习路程之篇六、知识点、算数运算符、自增自减运算符、类型转换
  • java学习路程之篇七、知识点、赋值运算符、关系运算符、逻辑运算符、三元运算符、运算符优先级
  • java学习路程之篇八、知识点、方法介绍、方法的定义和调用格式、方法常见问题、方法重载
  • java学习路程之篇九、知识点、流程控制语句、分支语句、循环语句、三种循环的区别、跳转控制语句、if、switch、for、while、do、Random、break、continue
  • java学习路程之篇十、知识点、数组介绍、二维数组介绍、静态初始化、访问元素、遍历元素、动态初始化、内存图、数组常见问题
  • java学习路程之篇十一、知识点、逢7跳过、数组元素求和、判断两个数组元素是否相同、查找元素在数组中的索引、数组元素翻转、数据交换、评委打分、随机产生验证码
  • java学习路程之篇十二、知识点、面向对象、类和对象、对象内存、成员变量和局部变量、this关键字、构造方法、封装
  • java学习路程之篇十三、知识点、常用API、String、StringBuilder
  • java学习路程之篇十四、知识点、集合基础
  • java学习路程之篇一、进阶知识、面向对象高级、static关键字、继承、final关键字、this、super
  • java学习路程之篇二、进阶知识、面向对象高级、包、抽象类、接口、多态
  • java学习路程之篇三、进阶知识、面向对象高级、接口新特性、代码块、内部类、Lambda表达式、窗体、组件、事件
  • java学习路程之篇四、进阶知识、石头迷阵游戏、绘制界面、打乱石头方块、移动业务、游戏判定胜利、统计步数、重新游戏
  • java学习路程之篇五、进阶知识、常用API、Object类、Math类、System类、BigDecimal类、包装类
  • java学习路程之篇六、进阶知识、常用API、Arrays工具类、冒泡排序、选择排序、二分查找、正则表达式
  • java学习路程之篇七、进阶知识、时间类、JDK8前后的时间类差异
  • 待补充

java之石头迷阵单击游戏、继承、接口、窗体、事件、组件、按钮、图片

前言

主方法和实现类在同一个包中。


主方法

package PSortGames;

public class Main {
    public static void main(String[] args) {
        new MainFrame();
    }
}

实现类

package PSortGames;

import javax.swing.*;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.util.Random;

// 继承窗体类和实现键盘的接口类
public class MainFrame extends JFrame implements KeyListener {
    int[][] data = {
            {1, 2, 3, 4},
            {5, 6, 7, 8},
            {9, 10, 11, 12},
            {13, 14, 15, 0}
    };

    int[][] win = {
            {1, 2, 3, 4},
            {5, 6, 7, 8},
            {9, 10, 11, 12},
            {13, 14, 15, 0}
    };

    int row;        // 0号元素行坐标位置
    int column;     // 0号元素列坐标位置
    int count;      // 统计步数

    public MainFrame() {
        // 窗体对象.addKeyListener(KeyListener实现类对象);
        this.addKeyListener(this);
        // this : 当前类对象
        // 1) 窗体对象
        // 2) KeyListener实现类对象

        // 初始化窗体
        initFrame();
        // 初始化数据
        initData();
        // 绘制游戏界面
        paintView();
        // 设置窗体可见
        setVisible(true);
    }

    /**
     * 初始化数据 (打乱二维数组)
     */
    public void initData() {
        // 准备Random对象
        Random r = new Random();
        // 遍历二维数组, 获取到每一个元素
        for (int i = 0; i < data.length; i++) {
            for (int j = 0; j < data[i].length; j++) {
                int randomX = r.nextInt(4);
                int randomY = r.nextInt(4);
                int temp = data[i][j];
                data[i][j] = data[randomX][randomY];
                data[randomX][randomY] = temp;
            }
        }

        for (int i = 0; i < data.length; i++) {
            for (int j = 0; j < data[i].length; j++) {
                if (data[i][j] == 0) {
                    row = i;
                    column = j;
                }
            }
        }
    }

    /**
     * 此方法用于初始化窗体
     */
    public void initFrame() {
        // 设置窗体大小
        setSize(514, 595);
        // 设置窗体关闭模式
        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        // 设置窗体标题
        setTitle("石头迷阵单机版V1.0");
        // 设置窗体置顶
        setAlwaysOnTop(true);
        // 设置窗体居中
        setLocationRelativeTo(null);
        // 取消默认布局
        setLayout(null);
    }

    /**
     * 此方法用于绘制游戏界面
     */
    public void paintView() {
        getContentPane().removeAll();

        if(victory()){
            // 加载胜利图片资源, 添加到窗体中
            JLabel winLabel = new JLabel(new ImageIcon("D:\\A_JAVA\\image\\win.png"));
            winLabel.setBounds(124,230,266, 88);
            getContentPane().add(winLabel);
        }

        JButton btn = new JButton("重新游戏");
        btn.setBounds(350,20,100,20);
        getContentPane().add(btn);
        btn.setFocusable(false);
        btn.addActionListener(() -> {
            count = 0;
            initData();
            paintView();
        });

        JLabel scoreLabel = new JLabel("步数为:" + count);
        scoreLabel.setBounds(50,20,100,20);
        getContentPane().add(scoreLabel);

        for (int i = 0; i < 4; i++) {
            for (int j = 0; j < 4; j++) {
                JLabel imageLabel = new JLabel(new ImageIcon("D:\\A_JAVA\\image\\" + data[i][j] + ".png"));
                imageLabel.setBounds(50 + 100 * j, 90 + 100 * i, 100, 100);
                getContentPane().add(imageLabel);
            }
        }

        JLabel background = new JLabel(new ImageIcon("D:\\A_JAVA\\image\\background.png"));
        background.setBounds(26, 30, 450, 484);
        getContentPane().add(background);

        getContentPane().repaint();
    }

    /**
     * 判断游戏是否胜利
     */
    public boolean victory() {
        for (int i = 0; i < data.length; i++) {
            for (int j = 0; j < data[i].length; j++) {
                if (data[i][j] != win[i][j]) return false;
            }
        }

        return true;
    }

    @Override
    public void keyPressed(KeyEvent e) {
        int keyCode = e.getKeyCode();
        move(keyCode);
        // 每一次移动之后, 都重新绘制游戏界面
        paintView();
    }

    /**
     * 此方法用于处理移动业务
     */
    private void move(int keyCode) {
        if(victory()) return;

        if (keyCode == 37) {
            if (column == 3) return;

            // 空白块和右侧数据交换
            // data[row][column]  data[row][column+1]
            int temp = data[row][column];
            data[row][column] = data[row][column + 1];
            data[row][column + 1] = temp;
            column++;
            count++;
        } else if (keyCode == 38) {
            if (row == 3) return;

            // 空白块和下面的数据交换
            // data[row][column] data[row+1][column]
            int temp = data[row][column];
            data[row][column] = data[row + 1][column];
            data[row + 1][column] = temp;
            row++;
            count++;
        } else if (keyCode == 39) {
            if (column == 0) return;

            // 空白块和左侧的数据交换
            // data[row][column] data[row][column-1]
            int temp = data[row][column];
            data[row][column] = data[row][column - 1];
            data[row][column - 1] = temp;
            column--;
            count++;
        } else if (keyCode == 40) {
            if (row == 0) return;

            // 空白块和上面的数据交换
            // data[row][column] data[row-1][column]
            int temp = data[row][column];
            data[row][column] = data[row - 1][column];
            data[row - 1][column] = temp;
            row--;
            count++;
        } else if (keyCode == 90) {
            // 触发作弊器
            data = new int[][]{
                    {1, 2, 3, 4},
                    {5, 6, 7, 8},
                    {9, 10, 11, 12},
                    {13, 14, 15, 0}
            };
        }
    }

    // ----------------------------------------------------
    @Override
    public void keyReleased(KeyEvent e) { }

    @Override
    public void keyTyped(KeyEvent e) { }
    // ----------------------------------------------------
}

java继承中的格式与语法、方法重写、extends、this、super、System、out、println、@Override

案例一

需求

人类: (Person)

成员变量: 姓名, 年龄

老师类

成员变量: 姓名, 年龄

成员方法: teach

姓名为张三, 年龄为30岁的老师正在讲课

学生类

成员变量: 姓名, 年龄, 成绩

成员方法: study

姓名为李四, 年龄为20岁, 成绩为100分的学生, 正在学习


父类

package test;

public class Person {
    private String name;
    private int age;

    public Person() { }

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    /**
     * 获取
     * @return name
     */
    public String getName() {
        return name;
    }

    /**
     * 设置
     * @param name
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 获取
     * @return age
     */
    public int getAge() {
        return age;
    }

    /**
     * 设置
     * @param age
     */
    public void setAge(int age) {
        this.age = age;
    }
}

子类

老师类

package test;

public class Teacher extends Person {
    public Teacher() { }

    public Teacher(String name, int age) {
        super(name, age);
    }

    public void teach() {
        System.out.println("姓名为" + super.getName() + ", 年龄为" + super.getAge() + "岁的老师正在讲课");
    }
}

学生类

package test;

public class Student extends Person {
    private double score;

    public Student() { }
    
    public Student(String name, int age, double score) {
        super(name, age);
        this.score = score;
    }

    public double getScore() {
        return score;
    }

    public void setScore(double score) {
        this.score = score;
    }

    public void study() {
    	// 因为在同一个类中
    	// 所以score可以直接使用,不需要用this关键字
        System.out.println("姓名为" + super.getName() + ", 年龄为" + super.getAge() + "岁, 成绩为" + score + "分的学生, 正在学习");
    }
}

主方法

package test;

public class Test1 {
    public static void main(String[] args) {
        Teacher t = new Teacher("张三", 30);
        t.teach();

        Student stu = new Student("李四", 20, 100);
        stu.study();
    }
}

案例二

需求

员工类: Employee

成员变量: 姓名,年龄,工资

成员方法: work方法

1、私有成员变量

2、提供空参,带参构造函数

3、提供setXxx和getXxx方法

4、编写work方法(员工工作…)

程序员类: Coder

成员变量: 姓名、年龄、工资

成员方法: work方法

姓名为张三,年龄为23,工资为15000的程序员正在编写代码

1、继承Employee父类

2、提供空参和带参构造函数

3、重写work方法

项目经理类: Manager

成员变量: 姓名,年龄,工资,奖金

成员方法: work方法

姓名为李四,年龄为24,工资为18000,奖金为5000的项目经理正在分配任务…

1、继承Employee父类

2、编写子类特有的成员变量(奖金)。私有化,提供setXxx和getXxx方法

3、提供空参和带参构造函数

4、重写work方法


父类(员工类)

package test;

public class Employee {
    private String name;
    private int age;
    private double salary;

    public Employee() { }

    public Employee(String name, int age, double salary) {
        this.name = name;
        this.age = age;
        this.salary = salary;
    }

    /**
     * 获取
     *
     * @return name
     */
    public String getName() {
        return name;
    }

    /**
     * 设置
     *
     * @param name
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 获取
     *
     * @return age
     */
    public int getAge() {
        return age;
    }

    /**
     * 设置
     *
     * @param age
     */
    public void setAge(int age) {
        this.age = age;
    }

    /**
     * 获取
     *
     * @return salary
     */
    public double getSalary() {
        return salary;
    }

    /**
     * 设置
     *
     * @param salary
     */
    public void setSalary(double salary) {
        this.salary = salary;
    }

    public void work() {
        System.out.println("员工工作...");
    }
}

子类

程序员类

package test;

public class Coder extends Employee {
    public Coder() { }

    public Coder(String name, int age, double salary) {
        super(name, age, salary);
    }

    @Override
    public void work() {
        System.out.println("姓名为:" + getName() + ", 年龄为:" + getAge() + ", 工资为" + getSalary() + "的程序员正在编写代码");
    }
}

项目经理类

package test;

public class Manager extends Employee {
    private double bonus;

    public Manager() { }

    public Manager(String name, int age, double salary, double bonus) {
        super(name, age, salary);
        this.bonus = bonus;
    }

    public double getBonus() {
        return bonus;
    }

    public void setBonus(double bonus) {
        this.bonus = bonus;
    }

    @Override
    public void work() {
        System.out.println("姓名为:" + getName() + ", 年龄为:" + getAge() + ", 工资为:" + getSalary() + ", 奖金为:" + bonus + "的项目经理正在分配任务");
    }
}

主方法

package test;

public class Test2 {
    public static void main(String[] args) {
        Coder c = new Coder("张三", 23, 15000);
        c.work();

        Manager m = new Manager("李四", 24, 18000, 5000);
        m.work();
    }
}

this和super

关键字 访问成员变量 访问成员方法 访问构造方法
this this.本类 成员变量; this.本类成员方法(); this(); this(…); 本类构造方法
super super.父类成员变量; super.父类成员方法(); super(); super(…); 父类构造方法

this代表本类对象的应用

super代表父类存储空间的标识

this()和super()都在争夺构造方法第一行位置,所以二者不能共存。


java学习路程之篇一、知识点、path环境变量、计算机发展史、数据的存储和运算、人机交互、计算机语言

1、计算机发展史

计算机发展史1计算机发展史2

计算机发展史3


2、数据的存储和运算

数据的存储和运算1

数据的存储和运算4

数据的存储和运算2

数据的存储和运算3

数据存储和运算5

数据存储和运算6

数据存储和运算7

数据存储和运算8

数据存储和运算9


3、人机交互

人机交互1

人机交互2


4、Path环境变量

Path环境变量1

Path环境变量2

Path环境变量3

Path环境变量4

Path环境变量5

Path环境变量6

Path环境变量7

Path环境变量8

Path环境变量9

Path环境变量10


5、计算机语言

计算机语言1

计算机语言2

计算机语言3

计算机语言4

计算机语言5

计算机语言6

计算机语言7

计算机语言8

计算机语言9


java学习路程之篇二、知识点、JAVA背景介绍、配置JAVA_HOME、跨平台、JVM、JRE、JDK

1、Java背景介绍

Java背景介绍1

Java背景介绍2

Java背景介绍3

Java背景介绍4

Java背景介绍5

Java背景介绍6

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


2、Java跨平台性

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3、JDK的下载和安装

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


4、第一个Java程序

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


5、HelloWorld案例详解

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


6、JVM、JRE和JDK

在这里插入图片描述


7、配置JAVA_HOME

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇三、知识点、类、模块、项目、操作、下载、安装、IDEA、开发工具

1、IDEA开发工具

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


2、IDEA的下载和安装

在这里插入图片描述


3、IDEA中的第一个代码

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


4、IDEAZ中的类、模块、项目的操作

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇四、知识点、注释、关键字、字面量

1、注释

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


2、关键字

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3、字面量

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇五、知识点、变量、标识符、数据类型、Scanner键盘录入

1、变量

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


2、标识符

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3、数据类型

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


4、Scanner键盘录入

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇六、知识点、算数运算符、自增自减运算符、类型转换

1、算术运算符

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


2、自增自减运算符

在这里插入图片描述

在这里插入图片描述


3、类型转换

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇七、知识点、赋值运算符、关系运算符、逻辑运算符、三元运算符、运算符优先级

1、赋值运算符

在这里插入图片描述


2、关系运算符

在这里插入图片描述


3、逻辑运算符

在这里插入图片描述

在这里插入图片描述


4、三元运算符

在这里插入图片描述

在这里插入图片描述


5、运算符优先级

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇八、知识点、方法介绍、方法的定义和调用格式、方法常见问题、方法重载

1、方法介绍

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


2、方法的定义和调用格式

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3、方法常见问题

在这里插入图片描述


4、方法重载

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇九、知识点、流程控制语句、分支语句、循环语句、三种循环的区别、跳转控制语句、if、switch、for、while、do、Random、break、continue

1、流程控制语句

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


2、分支语句if

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3、分支语句switch

在这里插入图片描述

在这里插入图片描述


4、for循环语句

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


5、while循环语句

在这里插入图片描述


6、do while循环语句

在这里插入图片描述


7、三种循环的区别

在这里插入图片描述


8、跳转控制语句

在这里插入图片描述


9、Random随机数

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇十、知识点、数组介绍、二维数组介绍、静态初始化、访问元素、遍历元素、动态初始化、内存图、数组常见问题

01、数组介绍

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


02、数组静态初始化

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


03、数组元素访问

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


04、数组遍历操作

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


05、数组动态初始化

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


06、数组内存图

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


07、数组常见问题

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


08、二维数组介绍

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


09、二维数组静态初始化

在这里插入图片描述

在这里插入图片描述


10、二维数组遍历

在这里插入图片描述

在这里插入图片描述


11、二维数组动态初始化

在这里插入图片描述

在这里插入图片描述


12、二维数组内存图

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇十一、知识点、逢7跳过、数组元素求和、判断两个数组元素是否相同、查找元素在数组中的索引、数组元素翻转、数据交换、评委打分、随机产生验证码

1、逢7跳过

在这里插入图片描述


2、数组元素求和

在这里插入图片描述


3、判断两个数组元素是否相同

在这里插入图片描述


4、查找元素在数组中的索引

在这里插入图片描述


5、数组元素翻转

在这里插入图片描述


6、数据交换

在这里插入图片描述


7、评委打分

在这里插入图片描述


8、随机产生验证码

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇十二、知识点、面向对象、类和对象、对象内存、成员变量和局部变量、this关键字、构造方法、封装

1、面向对象

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


2、类和对象

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3、对象内存图

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


4、成员变量和局部变量

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


5、this关键字

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


6、构造方法

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


7、封装

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇十三、知识点、常用API、String、StringBuilder

1、常用API

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


2、String类

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3、StringBuilder

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇十四、知识点、集合基础

1、集合基础

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇一、进阶知识、面向对象高级、static关键字、继承、final关键字、this、super

1、面向对象高级

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


2、static关键字

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3、继承

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


4、final关键字

在这里插入图片描述

在这里插入图片描述


java学习路程之篇二、进阶知识、面向对象高级、包、抽象类、接口、多态

1、包

在这里插入图片描述


2、抽象类

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3、接口

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


4、多态

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇三、进阶知识、面向对象高级、接口新特性、代码块、内部类、Lambda表达式、窗体、组件、事件

1、接口新特性

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


2、代码块

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3、内部类

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


4、Lambda表达式

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


5、窗体、组件、事件

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇四、进阶知识、石头迷阵游戏、绘制界面、打乱石头方块、移动业务、游戏判定胜利、统计步数、重新游戏

1、绘制界面

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


2、打乱石头方块

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3、移动业务

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


4、游戏判定胜利

在这里插入图片描述

在这里插入图片描述


5、统计步数

在这里插入图片描述


6、重新游戏

在这里插入图片描述


7、完整代码

java之石头迷阵单击游戏、继承、接口、窗体、事件、组件、按钮、图片


java学习路程之篇五、进阶知识、常用API、Object类、Math类、System类、BigDecimal类、包装类

1、介绍

在这里插入图片描述


2、Object类

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3、Math类

在这里插入图片描述


4、System类

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


5、BigDecimal类

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


6、包装类

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇六、进阶知识、常用API、Arrays工具类、冒泡排序、选择排序、二分查找、正则表达式

1、Arrays工具类

在这里插入图片描述


2、冒泡排序

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3、选择排序

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


4、二分查找

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


5、正则表达式

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


java学习路程之篇七、进阶知识、时间类、JDK8前后的时间类差异

1、时间类

在这里插入图片描述


2、JDK8(-)时间类

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


3、JDK8(+)时间类

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


待补充

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/3fb841b775.html