自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

老司机开车啦

一手方向盘,一手Java

  • 博客(45)
  • 收藏
  • 关注

原创 JVM复习(中)

3.垃圾回收器与内存分配策略3.1如何判断对象已死?3.1.1引用计数法给对象增加一个引用计数器,当有地方引用这个对象时,计数器的值+1,当引用失效时,计数器的值就-1;任何时刻计数器的值为0的对象就是不能再使用的,就是对象已死。主流的JVM中没有选用引用计数法来管理内存,最主要的原因还是引用计数法无法解决对象的循环引用问题。//观察对象的循环引用问题/***JVM参数:-xx:Pr...

2019-09-02 23:31:21 192

原创 JVM复习(上)

一.Java内存区域1.运行时数据区域(1)线程私有区域:程序计数器、Java虚拟机栈、本地方法栈。(2)线程共享区域:Java堆、方法区、运行时常量池。1.程序计数器(PC Register)线程私有程序计数器只占用很小的一块空间,可以看成是当前线程执行字节码的行号指示器。如果当前线程执行的是一个Java方法,那么程序计数器就记录了正在执行的虚拟机字节码指令的地址,如果是一个Nat...

2019-09-01 21:37:38 148

原创 【Java】反射与类加载器

类加载器1、类的加载过程:  当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载、连接、初始化三步骤来实现对这个类进行初始化。  加载:就是指将class文件读入内存,并为之创建一个Class对象。任何类使用时系统都会建立一个Class对象  连接:验证,是否有正确的内部结构,并和其他类协调一致。  准备: 负责为类的静态成员分配内存,并设置默认初始化值  解析: ...

2019-08-25 16:43:52 877

原创 基于字符界面的小卖部

基于字符界面的收银台操作系统的开发主要是为了对JavaSE基础知识的巩固,同时练习通过对现实问题分析,汇总,抽象,设计,最终通过代码实现。

2019-08-22 15:51:00 128

原创 总结之集合类框架(下)

Map集合Collection集合的特点是每次进行单个对象的保存,如果现在要进行一对对象(偶对象)的保存就只能使用Map集合来完成,即Map集合中会一次性保存两个对象,且这两个对象的关系:key==value结构,这种结构最大的特点是可以通过key找到对应的value内容Map接口概述public interface Map<K,V>在Map接口中有如下常用方法:No...

2019-08-18 15:00:36 107

原创 【Java】集合输出的方法

集合输出的方法集合输出一共有四种手段:Iterator、ListIterator、Enumeration、foreach- 迭代输出:Iterator在JDK1.5之前,在Collection接口中就定义有iterator()方法,通过此方法可以取得Iterator接口的实例化对象;而在JDK1.5之后,将此方法提升为Iterable接口中的方法。无论你如何提升,只要Collection有这...

2019-08-12 23:17:47 943

原创 【Java】总结之集合类框架(上)

集合框架Collection接口在Java的类集里面(java.util)提供了两个最为核心的接口:Collection、Map接口。其中Collection接口的操作形式与之前编写链表的操作形式类似,每进行一次数据操作的时候只能够对单个对象,进行处理。Collection是单个集合保存的最大父接口Collection接口的定义如下:public interface collection...

2019-08-11 19:44:43 113

原创 总结之Lambda表达式与函数式编程

Lambd表达式范例:传统的面向对象开发interface IMessage2{ void print();}public class TestDemo { public static void main(String[] args) { IMessage2 message2 = new IMessage2() {//匿名内部类 @...

2019-08-11 14:29:58 210

原创 用Idea里面往数据库中插入中文,在数据库中查询中文显示乱码或者显示为‘?’问题的解决

今天在完成一个收银台项目的很简单的功能时,突然发现用idea写的Java代码往数据库中插入数据时,显示结果如下:可以看见红框内我的name属性本来输入的是中文:悟空和猴子但是现在好像不支持中文,我先确定是不是数据库的问题。所以我在终端里面使用sql语句直接插入一条数据:此时,name属性和username属性都显示为中文,那么排除数据库本身的问题。在网上搜了好一大堆,最后在连接数据库的时...

2019-08-09 20:56:47 5435 3

原创 【Java】新特性(下)

1.枚举//定义一个描述颜色基色的多例类class Color{ private String title; public static final int RED_FLAG = 1; public static final int BLUE_FLAG = 2; public static final int GREEN_FLAG = 3; priva...

2019-08-07 23:44:16 36389

原创 【JavaSE】新特性(中)

1.通配符先看一段代码:class Point{ private Object x; private Object y; public Object getX() { return x; } public void setX(Object x) { this.x = x; } public Objec...

2019-07-31 16:33:21 80

原创 错题Day05

1.下面的程序编译运行之后,在屏幕上显示的结果是( )public class Test{ public static void main(String args[]){ int x,y; x = 5>>2;//右移动 y = x>>>2;//无符号右移动 System.out.println(y); }}//打印结果:0...

2019-07-31 15:52:30 143

原创 【JavaSE】新特性(上)

新特性1.可变参数//现在假设说有这样的要求:要求设计⼀一个⽅方法,⽤用于计算任意参数的整数的相加结果。public class Test1 { public static void main(String[] args) { System.out.println(add(new int[]{1,2,3})); System.out.println(a...

2019-07-30 17:28:36 101

原创 计算机网络基础(3)

网络层:快递小哥1.地址管理 使用一个32位的整数来表示地址IP地址(IPv4为准,IPv6)2.路由选择​ a)动态分配​ b)NAT机制,一个IP供多个主机来使用​ c)IPv6 对应IP地址的长度是16个字节32位的整数表示成点分十进制的方式网段划分把IP地址分成网络号和主机号同一个局域网中,网络号都相同,但是主机号不同相邻的局域网,网络号不能相同局域网之间...

2019-07-28 23:34:24 91

原创 计算机网络基础(2)

1.传输层​ socket—>和传输层是密切相关的​ 传输层负责端到端之间的传输,只关注起点和终点​ 起点:源ip/源端口​ 重点:目的ip/目的端口​ ip地址是一个32位的整数,IP协议中来描述的(网络层的概念)​ 端口号:区分一台主机上的哪个程序,是一个16位的整数(传输层的概念)2.UDPUDP:很难表示一个很大的数据,长度上限是64kb​ 源端口:16位...

2019-07-28 23:33:40 95

原创 【hexo】个人博客

一直以来都是用CSDN来写博客,感觉很方便,但是页面不带有个性化,所以今天尝试着用hexo搭建了个人博客,还是半成品阶段,马上就ok啦,但是我不会放弃CSDN毕竟是我博客的第一网站。还是希望自己能坚持写博客,虚无缥缈的思路化成简单易懂的言语这个过程真的上瘾,而且它还记载了我学习的过程。...

2019-07-22 22:19:49 157

原创 Linux操作指令

Linux基础操作指令1.ls(list)罗列出当前目录的文件和目录更常用的是ls -l/ll 打印出更详细的信息2.cd(change dir)进入某个目录/切换到某个目录特殊的目录:a).表示当前目录b)…表示当前目录的上级目录c)~表示当前用户的home目录d)/表示根目录,所有目录的最上级目录Linux的目录结构也是一种树形结构3.pwd​ 查看当前目录的完整路径...

2019-07-21 22:53:49 97

原创 计算机网络的理论(1)

客户端:主动发起请求的一方服务器:被动接受请求的一方应用层1.请求(request)和响应(response)中包含的信息有哪些2.请求数据和响应数据如何组织(具体按照什么格式来序列化)​ 序列化:把对象变成字符串​ 反序列化:把字符串变成对象​ 序列化的创建方式​ a)xml​ b)json 优点:方便调试​ 缺点:传输效率低HTTP协议打开一个网页都是靠http...

2019-07-21 22:53:12 239

原创 错题Day04

1.下面属于黑盒测试方法的是 ( C )A:语句覆盖B:逻辑覆盖C:边界值分析D:路径覆盖2.下面不能用作存储容量单位的是 ( C )A:ByteB:GBC:MIPSD:KB3.下面属于软件定义阶段任务的是(A)A:需求分析B:软件分析C:详细设计D:系统维护4.关于Socket通信编程,以下描述错误的是(D)A:服务器端通过new ServerSocket()创...

2019-07-20 17:15:42 158

原创 错题Day03

1.在异常处理中,一下描述不正确的有()A:try块不可以省略B:可以使用多重catch块C:finally语句块可以省略D:catch块和finall块可以同时省略答案:D2.面向对象开发中,引用传递意味着传递的并不是实际的对象,而是对象的引用,因此,外部对引用对象所做的改变不会反映到所引用的对象上错误 传值传参的时候,我们在函数中改变了参数的值,其对应的变量的值并不改变,值类...

2019-07-16 15:55:48 1880

原创 多线程复习

synchronized底层实现:​ 1.monitorenter​ 2.monitorexitJDK1.6关于synchronized优化CAS(Compare And Swap)CAS(O,V,N) O:当前线程认为主内存的值 V:主内存中的实际值 N:希望更新的值自旋:处理器上跑无用指令,但是线程不阻塞自适应自旋:重量级锁的优化JVM给一个时间段,在该时间段内,线程是...

2019-07-16 15:54:53 65

原创 【复习】四大工具类

1.juc:Lock 1.5​ tryLock() :非阻塞式得获取锁​ lockInterruptily() : 响应中断​ tryLock(long time,TimeUnit) :支持超时2.synchronized与ReentrantLock的区别(1)synchronized是JVM层面,是关键字;Lock是Java语言层面实现的"管理"(2)Lock具备一些synchron...

2019-07-16 15:54:08 155 1

原创 JVM

1.JMM的工作流程:JMM:Java内存模型(关于并发程序的内存模型-逻辑模型)工作内存:每个线程创建时分配的空间,线程私有。要求所有变量的读写均在工作内存中进行主内存:所有线程共享的内存区域,存放所有共享变量(类的实例变量,类的静态变量,常量)2.JMM三大特性只有以下三个特性同时满足,才是线程安全的代码。(1) 原子性:基本数据类型的访问读写,都属于原子性操作若需要更大范围的原...

2019-07-16 11:23:25 68

原创 Day02 错题

1.在基本Java类型中,如果不明确指定,整数型的默认是【int double】类型2.方法通常存储在进程中的【方法区】中3.不考虑反射,关于私有访问限制符private 修饰的成员变量,以下说法正确的是【只能被该类自身所访问和修改】 public > protected > default > private4.Math.round(11.5)等于【12】,Math.r...

2019-07-15 14:11:33 300

原创 错题Day01

1.阅读如下代码,请问对语句行test.hello(). 描述正确的有()package NowCoder;class Test{ publi static void hello(){ System.out.println("hello"); }}public class MyApplication{ public static void main(String[] a...

2019-07-15 14:10:23 209

原创 【Java】总结之特殊类

8 三大特殊类8.1 String类8.1.1 概念​ 用String类创建的字符串是一个固定的、不可改变的对象​ 一个字符串常量用双引号括起,如"同志们好"、“88.999”、“hello word”,可以把每个字符串常量当作一个对象来使用。程序执行时,系统自动将字符串常量封装为对象。​ 字符串是一个对象,必须声明一个变量来引用字符串8.1.2 构造字符串​ 1.字符串常量Str...

2019-07-13 17:36:00 136

原创 【Java】总结之抽象类与接口

7 抽象类与接口7.1抽象类7.1.1抽象类的概念​ 1.最终类:若一个类不能被继承,则应该用final关键字所修饰,称该类为最终类。最种类位于类的树状结构的最底端,不能被继承。如:final class Leaf{ ...}​ 系统类库中,String类,StringBuffer类等都是final类。​​ 2.抽象类:抽象类与最种类刚好相反,必须被继承,使用关键字absta...

2019-07-13 17:35:30 166

原创 【Java】面向对象编程总结(下)

6. 面向对象编程—类与对象(下)6.1 继承继承是指一种类继承另外一种类的成员(成员变量和成员方法),被继承的类称为父类(超类或者基类),继承了父类的类被称为子类或者派生类。6.1.1 子类在声明类的时候,使用关键字extends继承一个已经定义好的类(父类),定义一个新的类(子类)。定义子类的格式【访问修饰符】 class 子类名 extends 父类名{ //子类的成员变量和...

2019-07-13 17:34:59 307

原创 【JavaSE】前期总结之面对对象编程总结(上)

5. 面向对象编程—类与对象(上)5.1面向对象编程简介1.Java是一门面向对象的编程语言,为我们提供了定义类、定义属性、方法等最基本的功能。2.面向对象的三大特征​ (1)封装性​ (2)继承性​ (3)多态性3.面向对象名次拓展​ (1)OOA :面对对象分析​ (2)OOD:面对对象设计​ (3)OOP:面向对象编程5.2面向对象的概念​ ...

2019-05-17 01:49:58 187

原创 【JavaSE】前期总结之方法

5.方法5.1 方法定义​ 1.方法定义的一般格式访问修饰符 方法类型 返回值类型 方法名称(参数列表){ 方法体的内容;}>访问修饰符: private、默认方式、protected、public。>>方法类型:包括:static、默认方式。>>返回值类型:可以是任何Java 数据类型。>>方法名:程序员给方法起的名字,一般要...

2019-05-14 22:32:04 107

原创 【JavaSE】前期总结之运算符和语句

2.JavaSE运算符和语句2.1运算符​ 运算符规定了数据计算的规则。运算符有两种分类方法:一种按运算符功能分类,另一种按运算符链接数据个数分类。​ 运算符按功能分为7种:赋值运算符、算数运算符、关系运算符、逻辑运算符、条件运算符、条件运算符、位运算符、其他运算符。​ 运算符按链接数据个数分为3种:一元运算符(连接1个数据)、二元运算符(连接两个数据)、三元运算符(连接三个数据)。...

2019-05-13 21:13:45 123

原创 【JavaSE】前期总结之数据类型

1.JavaSE之数据类型1.1Java注释Java中的注释分为三种(1) 单行注释://(2) 多行注释:/* 注释内容 */(3) 文档注释:/** 文档注释 */ (常用于方法和类之上描述方法和类的作用,可以用来自动生成文档)1.2Java中的标识符Java语言中,对于变量,常量,函数,语句块也有名字,我们通常称为Java标识符。(1) Java语言规定...

2019-05-12 23:17:45 220

原创 Java面向对象编程,类与对象总结

一 . 面向对象编程简介面向对象三大特征1.封装性2.继承性3.多态性面向对象名次扩展面向对象的分析 OOA面向对象的设计 OOD面向对象的编程 OOP类是人类对实体抽象的映射,是人类大脑抽象思考的结果,进行抽象总结出来一个模版,这个模版被称为类对象是实际存在的,现实世界中实际存在类>>实例化>>对象对象>>抽象>>类...

2019-04-08 22:31:22 403

原创 JavaSE数组的定义与使用总结

一. 基本概念数组的动态初始化数组类型[]数组名称 = new 数组类型[长度];1.数组的访问通过索引来完成,即数组名称[索引],索引从0开始,所以可以采用的索引范围从0~索引 - 1,假设现在开辟了3个空间的数组,那么可以使用的索引是0,1,2,如果访问超过了数组索引,将会提示java.lang.ArrayIndexOutOfBoundsException2.当数组采用动态初始化开...

2019-04-08 12:07:34 205

原创 c语言实战练习4月2日

1.编写函数: unsigned int reverse_bit(unsigned int value); 这个函数的返回值value的二进制位模式从左到右翻转后的值。 如: 在32位机器上25这个值包含下列各位: 00000000000000000000000000011001 翻转后:(2550136832) 10011000000000000000000000000000 程序结果返回: ...

2019-04-02 14:37:16 131

原创 C语言4月1日实战练习

1. 5位运动员参加了10米台跳水比赛,有人让他们预测比赛结果 A选手说:B第二,我第三; B选手说:我第二,E第四; C选手说:我第一,D第二; D选手说:C最后,我第三; E选手说:我第四,A第一; 比赛结束后,每位选手都说对了一半,请编程确定比赛的名次。#include<stdio.h>int main(){ int a = 0,b = 0,c=0,d=0,e=...

2019-04-01 11:24:59 119

原创 扫雷

扫雷游戏#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>int Menu() { printf("==================\n"); printf(" 1. 开始游戏\n"); printf(" 0. 退出游戏\n"); printf("========...

2019-04-01 10:54:10 58

原创 C语言实战训练

1. 写一个函数返回参数二进制中 1 的个数 比如: 15 0000 1111 4 个 1 程序原型: int count_one_bits(unsigned int value) { // 返回 1的位数#include<stdio.h>#include<stdlib.h>int count_one_bits(unsigned int value){ ...

2019-03-29 23:35:32 429

原创 C语言函数随写练习

1.实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定, 输入9,输出99口诀表,输入12,输出1212的乘法口诀表。#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>void mul(int n) { int i, j; for (i = 1; i <= n; i...

2019-03-26 16:02:11 156

原创 3月24日随写练习

1.猜数字游戏#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>#include <time.h>void menu() { printf("****************************\n"); printf("******** 1.play *...

2019-03-24 18:53:14 145

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除