揉碎专题

[Java基础揉碎]坦克大战 java事件处理机制

目录 坦克大战游戏演示 ​编辑 为什么要写这个项目  java绘图坐标体系 java绘图技术 Graphics的常用方法 // 画直线  ​编辑 // 画矩形边框  // 画填充矩形  // 画填充椭圆 // 获取图片资源  // 写字  绘出坦克  新建一个tankgame包, 新建一个类Tank, 里面包含横坐标和纵坐标  新建一个Hero, 自己的坦克类, 去

[Java基础揉碎]System类

1) exit 退出当前程序 2) arraycopy: 复制数组元素,比较适合底层调用,一般使用 Arrays.copyOf完成复制数组(Arrays.copyOf其实底层也是用的System.arraycopy, 本质是一样的) int[] src={1,2,3}; int[] dest = new int[3]; System.arraycopy(src, 0, dest, 0,

[Java基础揉碎]Math类

目录 基本介绍 方法一览(均为静态方法) 1) abs 绝对值 2) pow 求幂 3) ceil 向上取整 4) floor 向下取整 5) round 四舍五入 6) sqrt 求开方 7) random求随机数 8) max 求两个数的最大值 9) min 求两个数的最小值    基本介绍 Math类包含用于执行基本数学运算的方法,如初等指数、对数、平方根

[Java基础揉碎]StringBuffer类 StringBuild类

目录 StringBuffer类 介绍 继承图  String VS StringBuffer  StringBuffer的构造器 String和StringBuffer的转换 StringBuffer类常见方法 测试题 StringBuild类 基本介绍 继承图 String、StringBuffer 和StringBuilder的比较 通过字符串拼接循环测试可以看

[Java基础揉碎]内部类

目录 基本介绍 语法 内部内的分类  局部内部类 1.可以直接访问外部类的所有成员,包含私有的 2.不能添加访问修饰符,因为它的地位就是一个局部变量。局部变量是不能使用修饰符的。但是可以使用final修饰,因为局部变量也可以使用final  3.作用域:仅仅在定义它的方法或代码块中 4.局部内部类---访问---->外部类的成员[访问方式: 直接访问] 5.外部类---访问---

[Java基础揉碎]抽象类

目录 通过问题引出 介绍 关键点  细节 ​编辑 抽象类的最佳设计模式--模版设计模式 1.先用最容易想到的方法 2.分析问题,提出使用模板设计模式 通过问题引出 假如我们有个动物类, 动物都有eat吃的方法, 但是具体吃什么, 我们不知道, 因为是什么动物我们不知道, 那么我们就可以声明为抽象类  >>>当父类的某些方法,需要声明,但是又不确定如何实现时,可

[Java基础揉碎]final关键字

目录 介绍  在某些情况下,程序员可能有以下需求,就会使用到final final注意事项和讨论细节  1) final修饰的属性又叫常量,一般用XX_XX_XX来命名 2) final修饰的属性在定义时,必须赋初值,并且以后不能再修改,赋值可以在如下位置之一[选择一个位置赋初值即可]: 3) 如果final修饰的属性是静态的,则初始化的位置只能是 ①定义时 ②在静态代码块 不能在构造

[Java基础揉碎]单例模式

目录 什么是设计模式 什么是单例模式 饿汉式与懒汉式  饿汉式vs懒汉式 懒汉式存在线程安全问题   什么是设计模式 1.静态方法和属性的经典使用 2.设计模式是在大量的实践中总结和理论化之后优选的代码结构、编程风格、 以及解决问题的思考方式。设计模式就像是经典的棋谱,不同的棋局,我们用不同的棋谱,免去我们自己再思考和摸索 什么是单例模式 1.所谓类的单例设计模式,就

[java基础揉碎]多态参数

多态参数 方法定义的形参类型为父类类型,实参类型允许为子类类型  例子: 定义一个员工类, 有名字和工资两个属性, 有年工资的方法  定义一个普通员工继承了员工类 , 重写了年工资的方法 定义一个经理类, 也继承了员工类, 同时经理多以了一个奖金的属性, 重写的年工资方法也多加上了奖金  写一个方法得到任何对象的年工资  最终通过同一个方法同一个父类形参,传进去不同的子类实参

掰开揉碎,讲讲这个已存在近24年的CURL漏洞

聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士 这是一个与cookie、Internet代码和一个CVE有关的故事。故事发生在很久以前,所以搬好小板凳,仔细听好。当然,场景时候curl,它是与我工作有关的互联网传输工具和库。 1998年 1998年,我们推出curl 4.9。在那个年代,少有人听说过或用过curl。距离curl 网站宣布某个新发布的下载量达到300次还有几个月的时间要过

ef中的Code first掰开了,揉碎了来学习(一)

EF的发展历程 还是先来说一下EF从诞生到现在这几年的发展历程吧。在EF最初的版本中,作为一个ORM组件其通过EDM文件(里面是一些xml)来配置数据库与实体类之间的映射,实现数据进出数据库的控制。最初的版本中只支持Database First,即由已有数据库结构生成EDM,继而得到实体类。后来EF在4.0版本起开始支持Model First即先建立EDM,然后生成数据库。  Entity F

(二)掰开了,揉碎了,说经典halcon中的那些算子

计算机视觉:通俗点讲:就是让计算机通过图像理解外围的世界,理解之后要通过外围的控制系统与外界发生联系、动作:手眼抓取、标定、搬运。 视觉的平台有:Halcon、OpenCV、LabView 算子记忆的越多,后面越记不住。学视觉,绝不是比记忆力,比谁算子学的多。方向导向最重要。学习的最高境界:什么都记不住,套路,灵活使用,无招胜有招。学halcon一定要灵活,halcon做的很好,一定要触类

掰开揉碎机器学习系列-决策树(1)-ID3决策树

一、决策树的理论依据: 1、熵的概念: 熵代表了数据分布的"稳定程度"(书上写的所谓纯度),或者说是"分布的离散程度"。用掰开揉碎的方式解释如下: 如以下数据: 技术能力 积极度 年龄 前途 6 8 old normal 8 9 old yes 3 3 old no 7 5 old normal 7 7 young normal 7 6 old normal 8 5 old no

[java基础揉碎]多态数组

介绍: 多态数组就是有一个父类数组, 数组含有不同多个父类子类对象 解析: 新建一个person类, 有名字,年龄属性, 同时有个say方法  新建一个子类,  有一个成绩的属性,并重写了say方法, 加上了成绩  新建一个子类老师, 并有工资这个属性, 一样重写了say方法加上了这个属性  要求创建一个父类数组, 并将子类放在这个数组里, 并调用每个对象的say方法  这里

[java基础揉碎]动态绑定机制

介绍:  详例:   新建一个父类:    新建一个子类继承父类: 这里有个main方法, 创建了一个向上转型的对象 , 这时因为对象的运行类型是b, 所以下面打印走的b方法得到40 , 30    如果我们将子类的sum注销, 那么调用的这个方法后去找父类, 我们发现父类的sum调用的geti, 此时这个geti在父类子类当中都有, 回去调那个geti, 在此处就发生了动态绑定

[java基础揉碎]this

引出this: 什么是this: java虚拟机会给每个对象分配 this,代表当前对象。 这里的this就是new出来的这个对象    this的本质: this是个引用在堆中指向它自己:   this的细节:  访问成员方法: 访问构造器:

[java基础揉碎] 作用域

局部变量与全局变量:   作用域的细节:

[java基础揉碎]方法的调用机制 方法使用的细节 方法的递归调用 方法的可变参数​

目录 方法的调用机制  方法使用的细节 方法的递归调用 方法的可变参数​编辑​编辑 方法的调用机制  方法使用的细节 访问修饰符(作用是控制方法使用的范围) 如果不写默认访问,[有四种:public,protected,默认,private] 返回数据类型 1.一个方法最多有一个返回值[思考,如何返回多个结果->返回数组]  2.返回类型可以为任意类型,包含基本

[java基础揉碎]类与对象

目录 类与对象的引出: 类与对象的概述: 类与对象在内存中的布局: 属性的注意细节: 类与对象在内存中创建的过程: 类与对象的引出: 例如这样一个问题: 如果用单独变量来解决, 就会有一个问题, 不利于数据的管理, 将所有猫的信息都给拆解了:     如果用数组来解决, 则会有 1)数据类型体现不出来的问题, 比如猫的年龄本来是个int, 但是因为数组的类型

[java基础揉碎]二维数组

目录 什么是二维数组:  二维数组在内存中的布局: 动态初始化: 静态初始化:  杨辉三角: 使用细节和注意事项: 什么是二维数组:  1.从定义形式上看 int[][] 2.可以这样理解,原来的一维数组的每个元素是一维数组,就构成二维数组 二维数组在内存中的布局: 与一维不同的是在数组里面的空间还是放的数组的地址   动态初始化: 动态创建:

[java基础揉碎]for循环的细节

1.for循环中的初始化和变量迭代可以写到其它地方,但是两边的分号不能省略  2.可以不写循环变量的初始化, 控制和迭代, 直接写分号, 表示无限循环  3.循环初始值可以有多条初始化语句,但要求类型一样,并且中间用逗号隔开, 循环变量迭代也可以有多条变量迭代语句,中间用逗号隔开。

[java基础揉碎]进制

目录  进制 进制的图示   进制的转换: 第一组 二进制转换成十进制示例 八进制转换成十进制示例  十六进制转换成十进制示例 ​第二组 十进制转换成二进制 十进制转换成八进制 十进制转换成十六进制  第三组 二进制转换成八进制  二进制转换成十六进制  第四组 八进制转换成二进制  十六进制转换成二进制   进制 进制介绍对于整数,有四种表示方式

[java基础揉碎]char类型储存到计算机的过程字符编码

字符型存储到 计算机中,需要将字符对应的码值(整数)找出来,比如'a' 存储:'a'==>码值97==>二进制(1100001)==>存储 读取:二进制(1100001)=>97===>'a'=>显示  字符编码表介绍: ASCIl(ASCIl编码表 一个字节 表示, 一个128个字符, 实际上一个字节有八位可以表示256个字符, 只用128个, 为什么没有用完是因为计算机是美国人造