- 博客(43)
- 收藏
- 关注
原创 Java学习之枚举
枚举—enum一个类中的对象,一般认为个数是有限且固定的,可以将每一个对象一一列举出来1.试试没有枚举类,如何手动设计一个Day类描述一周7天//类似单例模式public class Day {//描述星期 //构造方法私有 private Day() {} //所有对象都是属性 public static final Day monday = new Day(); publ...
2019-12-09 21:43:43 189
原创 Java学习之多态
Java面向对象的四大特性: 继承、封装、多态、抽象多态同一个对象 体现出来的多种不同形态(身份) 将一种行为表现出不同的效果想要实现多态的效果 需要现有继承关系体现父类类型的引用 指向 子类的对象 向上转型 Person p = new Teacher();该引用只能调用父类中定义的属性和方法如果子类中重写了父类方法,那么调用的是子类重写后的方法 如果父类与子类有同名的...
2019-12-05 20:43:08 201
原创 Java之内部类
内部类在Java中可以将一个类定义在另一个类的内部内部类可以定义在 类的内部(与类成员层次一致)内部类可以定义在 方法/块内部(与类成员相差一个层次 与方法的局部变量一个层次)成员内部类将一个类直接定义在类的里面,作为成员,与属性或方法层次一致成员内部类可以与正常类一样 可以用不同的修饰符来修饰好处1. 省略了一个.java文件好处2. 成员内部类可以访问外部类的所有成员 包...
2019-12-05 20:42:35 217
原创 Java学习之修饰符
final修饰变量如果变量没有赋值,给一次机会,如果变量有值,不允许再次改变变量是基本类型,值不可改变变量是引用类型,地址引用不可改变修饰变量特点与修饰变量类似,修饰属性必须赋初始值,否则编译报错。这是因为变量有默认值null,如果不赋初始值,那么加上final修饰之后,变量的值就已经无法改变了。修饰属性方法是最终的不可更改的,方法不能被子类重写(覆盖)修饰类类是最终的(太监...
2019-11-25 18:52:50 158
原创 Java学习之设计模式
设计模式 ------ 设计思想大体分为三类:创建型模式 ----- 用于解决对象创建的过程单例模式 工厂方法模式 抽象工厂模式 建造者模式 原型模式结构型模式 ----- 把类和对象通过某种形式结合在一起,构成某种复杂或合理的结构适配器模式 装饰者模式 代理模式 外观模式 桥接模式 组合模式 享元模式行为型模式 ----- 用来解决类和对象之间的交互,更合理的优化类或对象之间的关系...
2019-11-25 17:25:19 161
原创 Java学习(十一)之类与类之间的关系
类与类之间的关系A is a B 泛化:继承父类 实现接口A has-a B 包含关系:组合 聚合 关联A use-a B 依赖继承子类通过关键字继承父类,extends子类的对象可以调用父类中的(public和protected)属性和方法,当作自己的来使用构造方法(程序块)严格意义上来说是子类在调用构造方法(程序块)时,默认调用父类的构造方法(以及父类程序块),不算是继...
2019-11-17 15:26:16 291
原创 Java学习之重写(override)和方法重载(overload)
方法重写(override)方法重载(overload)类产生继承关系的两个类,子类重写父类的方法一个类中的一组方法权限子类可以大于等于父类没有要求特征符final static abstract,父类方法是final,子类不能重写父类方法是static,子类不存在父类方法是abstract,子类必须重写(子类是具体必须重写,否则子类是抽象类,可以不重写...
2019-11-14 17:10:07 153
原创 Java学习(十)之nextLine, nextInt, next
1.导包 java.util2.创建对象 Scanner Input = new Scanner(System.in);3.做事情 int value = input.nextLine();String value = input.nextLine();在这里插入代码片
2019-11-13 10:45:17 409
原创 测试学习(一)
测试几种类型冒烟测试:正式测试之前的预测试,就是日常编写完一段代码之后通常需要运行一下,看看刚刚完成的模块是否正常执行,是否影响了前面模块的正常执行功能测试:根据测试用例,判断软件是否达到了用户所需求的功能接口测试:主要检测各模块之间的数据交换传递和控制管理过程,以及系统之间的逻辑依赖(属于功能测试)兼容性测试:测试系统在不同版本上的功能兼容性性能测试:测试系统的负载能力和压力,相关指...
2019-11-11 20:42:42 586
原创 MySQL学习(六)之order by,聚集函数
使用order by对查询结果进行排序语法order by 字段 asc | desc; asc ---- 升序(默认) desc ---- 降序# 例select username, math order by math asc;注意order by 放在select的语句末尾select * from xx where xx order by xx;聚集函数...
2019-11-05 13:39:54 1126
原创 MySQL学习(四)之数据操作
插入数据使用insert关键字来添加数据# 向表中指定字段中添加值insert into 表 (字段1, 字段2, 字段3) values (值1, 值2, 值3);# 向表中的所有字段添加值,有多少字段就写多少值insert into 表 values (值1, 值2, 值3, 值4 ...);注意:插入的数据要与字段数的类型相同数据的大小应该在规定的范围内数据中的数据的...
2019-11-05 13:15:24 151
原创 MySQL学习(五)之模糊查询
常用符号> < <= >= = <>(不等于)in ---- 代表的范围select * from stu where math = 88; #-- 查询数学成绩是88的数据select * from stu where math in (18,88,90); # 查询数学成绩在in值范围内的数据like ---- 模糊查询...
2019-11-05 13:14:49 182
原创 MySQL学习(三)之表相关操作
创建表的语法create table 表名称( 字段1 类型(长度) 约束, 字段2 类型(长度) 约束, 字段3 类型(长度) 约束);注意创建表的时候,后面使用小括号,最后有分号编写字段,字段与字段之间使用逗号,最后一个字段不能使用逗号如果声明字符串数据的类型,长度是必须指定的如果不指定数据的长度,有默认值的。int类型的默认长度是11数据库的数据类型(重点...
2019-10-31 11:04:36 151
原创 MySQL学习(二)之库操作
库操作创建、删除数据库create database test1;drop database test1;查看或切换数据库show databases;use (数据库名); //切换到指定数据库
2019-10-30 14:54:16 112
原创 MySQL学习之数据库的基本知识
数据库产品: 关系型数据库: 大型数据库:Oracle,DB2,常用于政府银行 中型数据库:SQL serve,MySQL等 非关系型数据库: memcached, mongodb,redis以key-value形式存储关系型数据库和非关系型数据的区别: 关系型数据库:安全,磁盘存储,传统二维结构(行,列),空间占用大,检索速度较非关系型数据库低。500万-1000万...
2019-10-29 15:36:47 175
原创 Java学习(九)之构造方法
类1.属性 ---- 静态描述类的特征(变量,存值)2.方法 ---- 动态描述类的行为(做事情)3.构造方法 ---- 用来创建当前类的对象(是一个特殊的方法)4.程序块(代码块) — 一个无修饰符无参数无返回值的方法构造方法作用:为构建(构造)当前类的对象写法:权限修饰符 [返回值类型(当前类)] 与类名一致的方法名(参数列表) [异常]{ 一件事情 创建一个对象(当前类...
2019-10-24 16:45:13 280
原创 Java学习(八)之重载
overload — 方法重载1.概念:一个类中的一组方法,相同的名字,不同的参数列表参数列表的不同体现在哪里??参数的个数 参数类型 参数的顺序2.作用:为了使使用者便于记忆 只需要记录一个名字 执行不同的操作3.调用方法时,首先通过方法名字定位 如果方法名字有一致,可以通过参数的数据类型定位方法 如果没有与传递参数类型一致的方法,可以找一个参数类型可以进行转化(自动)pub...
2019-10-24 14:58:48 178
原创 Java学习(六)之多维数组
二维数组0.数组的概念 特点同上一节内容1.数组的定义/声明里面存储的类型[] 数组名字;int[][] array;2.数组的初始化静态初始化—有长度 有元素int[][] array = {{1,2},{3,4,5},{6,7}};动态初始化—有长度 没有元素int[][] array = new int[3][2];//错误定义一int[][] array = ...
2019-10-20 17:09:36 139
原创 Java学习(五)之数组
数组数组可以看成时一个容器,是一组数据类型相同的数据的组合,数组本身是一个引用数据类型,数组内存储的类型可以是基本类型,也可以是引用类型。数组的特点数组本身是一个引用数据类型数组是在堆内存中的一串连续的地址存在数组在初始化时必须指定长度堆内存中的数组空间长度一旦确定,不能再次发生改变栈内存的变量中存储的是数组的地址引用数组内部存储的类型可以是基本,也可以是引用1.数组的定义(...
2019-10-18 22:19:37 216
原创 Java学习(五)之语法结构
Java语法结构(流程控制)顺序结构按照语句出现顺序执行分支结构单分支ifif(条件(值)--->boolean){ 单行语句;/多行语句;}if(){ 代码1}else{ 代码2}多分支switchswitch(值){// byte/short/int/char/enum/String case 值1: 代码1; [break;]//可有可无...
2019-10-18 20:38:36 137
原创 Java学习(四)之运算符
Java 运算符用来指明对于操作数的运算方式按照操作数的数目来进行分类单目 a++双目 a+b三目 (a>b)?x:y;按照运算符的功能进行分类算术运算符+, -, *, /, %,++(自增), --(自减)int a = 1;b = a++; //b输出为1, ++在前,先自增后备份,++在变量后面,先备份再自增,会将副本空间内的值赋值给别人int a = 1...
2019-10-17 21:12:53 153
原创 Java学习(三)之类型转化
数据类型之间的转化问题同种数据类型之间是可以直接进行赋值操作数据类型不同的空间之间的赋值---->转换问题 同种大数据类型之间才能发生转换 基本类型 ---- 基本类型之间 可以直接转换(自动 强制) 引用类型 ---- 引用类型之间 可以之间转换(自动 强制 – 上转型 下转型) 基本类型 ---- 引用类型之间 不可以之间转换(间接 – 包装类/封装...
2019-10-17 15:36:15 130
原创 Java学习(二)之常量变量与命名规则
常量:常量代表是程序运行过程中,不能再次改变的值常量的作用:1.固定的值,代表计算过程经常用到的值,便于程序计算2.用来代表一个含义,例如在游戏中使用1,2,3,4表示游戏对象的上下左右移动方向什么样的值算是常量??1.固定不变的值算作常量,例如0, 3.14, ‘a’, true, 可以认为基本类型的值固定不变是常量2.特殊的常量,‘abc’ ----->String,St...
2019-10-17 14:26:15 357
原创 Java学习(一)之数据类型
数据类型基本数据类型 8个4整型 byte,short,int, long(内存空间大小不一致,表示范围不一样)byte: 字节型------>8个bit 1byte= 0 0000000 256种组合用第一个bit记录符号,0整数,1负数,表示范围为−27-2^7−27~27−12^7-127−1 即 -128~127以上的其他整数类型 依次乘2short 2字节 =...
2019-10-16 21:15:14 261 1
转载 MySQL学习(一)安装MySQL
char 和 varchar的区别char:定长,效率高,一般用于定长的表单提交数据存储;例如:身份证号,手机号,密码等char(m)定义的列的长度固定,大小为0~255之间,会在右边填充空格以达到指定长度,检索的时候空格会被删除。varchar: 不定长,效率偏低在MySQL5.0以上的版本,varchar数据类型的长度支持65535,支持65535个字节的数据,varchar(20)可...
2019-10-16 12:40:31 262
原创 python之闭包
闭包就是在一个函数中定义了另一个函数,外面的函数成为外函数,内部函数成为内函数,内函数运用了外函数的临时变量,并且外函数的返回值是内函数的引用。def adder(x): def wrapper(y): return x + y return wrapperif __name__ == '__main__': adder5 = adder(5) ...
2019-10-13 20:34:21 249
原创 python 之多线程编程(四)
生产者与消费者问题我们采用模块queue来实现线程间通讯,让各个线程之间贡献数据。引入queue中的Queue(python3.X和python2.X中对queue模块的写法不同,python2.X中直接import Queue即可)Queue 对象函数:函数描述qsize()返回队列大小empty()如果队列为空返回True,否则返回Falsefull(...
2019-10-09 15:28:00 116
原创 python 之多线程编程(三)
单线程与多线程分别使用单线程和多线程调用斐波那契额数列,阶乘和累加和三个函数:from time import ctime,sleepimport threadingclass myThread(threading.Thread): def __init__(self, func, args, name=''): threading.Thread.__init__...
2019-09-29 20:36:43 156
原创 pygame之坦克大战(四)
敌方坦克类(EnemyTank)import pygameimport randomimport bulletClass# 继承Sprite基类class EnemyTank(pygame.sprite.Sprite): def __init__(self, x = None, kind = None, isred = None): # 调用父类构造函数 ...
2019-09-29 17:14:41 306
原创 pygame之坦克大战(三)
我方坦克类(MyTank)# -*- coding: utf-8 -*-import pygameimport bulletClass # 加载我方双人坦克,每个坦克有三个等级tank_T1_0 = r"../image/tank_T1_0.png"tank_T1_1 = r"../image/tank_T1_1.png"tank_T1_2 = r"../image/tank_T1...
2019-09-29 16:50:11 348
原创 pygame之坦克大战(二)
子弹类(Bullet)import pygame#继承Sprite基类class Bullet(pygame.sprite.Sprite): def __init__(self): # 调用父类构造函数 pygame.sprite.Sprite.__init__(self) # 加载子弹四个方向的图像 self.bullet...
2019-09-29 15:18:39 335
原创 pygame之坦克大战(一)
战场类import pygamebrickImage = r"../image/brick.png" # 获取战场上砖块图片ironImage = r"../image/iron.png" # 获取战场上铁块图片# 战场上的砖,继承Sprite基类class Brick(pygame.sprite.Sprite): def __init__(self): #...
2019-09-29 10:25:09 540
原创 python的数据类型(三)
6)列表型 ListL1 = [iterable] 列表里的成员之间以”,“隔开,成员可以是任意类型。常用操作(L1 = [1, 2, 3]:操作功能举例备注copy()复制列表LL=L1.copy()LL = [1,2,3] ,id(LL) != id(L1)index(item)获取成员item首次再列表中出现的位置extend(list)...
2019-09-28 15:39:20 137
原创 python 基础之函数参数
1)可变参数def fun1(*args): print(*args) s = 0 for i in args: s = s + i return s# 运行结果# 2 4 6 8# result = 20*args为可变参数,可以接收若干个实参值,并将接受到的值组装为一个元祖def fun2(name, **kwargs): ...
2019-09-27 18:24:02 146
原创 pygame之会移动的罗小黑
import pygameimport sysfrom pygame.locals import *# 初始化pygamepygame.init()# 设置窗口大小size = widht, height = 800, 600# 设置移动速度speed = [-2, 1]# 颜色使用RGB,当三个数值均为255时为白色,均为0时为黑色bg = (255, 255, 255...
2019-09-24 20:47:08 851
原创 python 之多线程编程(二)
Threading模块python中的多线程主要有两个模块,thread模块和threading模块,相比较thread而言threading模块对线程支持更完善,有更多的同步原语,thread更底层,threading更加常用。所以着重介绍threading模块。Thread类Thread类属性:属性描述name线程名ident线程标识符daemon...
2019-09-24 17:31:00 204
原创 python 之多线程编程(一)
关于进程和线程的描述,这里有一篇比较有意思的类比描述http://www.ruanyifeng.com/blog/2013/04/processes_and_threads.html一、什么是进程进程是程序在一次数据集合上的一次执行过程,每个进程都有自己的地址空间,内存,数据栈及其他记录其运行轨迹的辅助数据。所以一个程序在不同数据集合上的运行,乃至一个程序在同样数据集合上的多次运行都是不同的进...
2019-09-24 11:24:18 152
原创 pygame 之 精灵类
先举个例子:import pygameclass Block(pygame.sprite.Sprite): # 构造函数,传入方块的颜色,以及它x,y的坐标 def __init__(self, color, width, height): # 调用父类(Sprite)构造函数 pygame.sprite.Sprite.__init_...
2019-09-23 21:50:01 1824
原创 python的数据类型(二)
5)字符串型python中的字符串使用英文的单引号 ’ 或双引号 " 括起来的字符序列。如果字符串中包括单引号字符,可以用双引号括起来,反之亦然。>>>print("'abc'")'abc'>>>print('"abc"')"abc"如果字符串中既有单引号,又有双引号,可以使用转义字符表示:>>> print('123\'ab...
2019-09-23 17:40:49 247
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人