![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
❷ Java之行
文章平均质量分 91
谙忆
Java相关研发架构工作经验5年。拥有Java相关发明专利8余项。从事过支付行业,研发与架构的系统稳定地支撑着公司日千万交易笔数量级的支付和对账。
二手车SaaS内核研发3年经验+,拥有二手车行业SaaS相关发明专利6项,研发、架构的元数据内核与权限系统,每日亿万级接口调用。
Java企业开发丰富的理论知识和实战经验。2020年CSDN博客之星第12名,同时在一些社区担任名誉职位。认证为CSDN博客专家、CSDN专栏签约作者、InfoQ签约作者、阿里云ACE杭州同城会会长、阿里云社区认证专家、华为云·云享专家。
展开
-
Java---设计模块(设计模块的简介及最简单的俩个单例代码加测试)
设计模式学习概述: ★ 为什么要学习设计模式 1、设计模式都是一些相对优秀的解决方案,很多问题都是典型的、有代表性的问题,学习设计模式,我们就不用自己从头来解决这些问题,相当于在巨人的肩膀上,复用这些方案即可。 2、设计模式已经成为专业人士的常用词汇,不懂不利于交流。 3、能让你设计的系统更加专业,让系统有更好的架构。★ 学习设计模式的层次 1、基本入门级——套用型(半年到一年左右时间领悟原创 2016-04-02 18:42:25 · 10466 阅读 · 0 评论 -
Java---网络编程(3)-TCP-互传文件和图片
☆ TCP建立连接,形成传输数据的通道。 在连接中进行大数据量传输 通过三次握手完成连接,是可靠协议 必须建立连接,效率会稍低Socket 和 ServerSocket类TCP传输TCP Socket:IP地址和端口,套接字Socket和ServerSocket 建立客户端和服务器端 建立连接后,通过Socket中的IO流进行数据的传输 关闭socket 同样,客户端原创 2016-05-10 14:25:21 · 16304 阅读 · 1 评论 -
Java---IO加强(3)-IO流的操作规律
一般写关于操作文件的读取的几个通用步骤!!! 1、明确源和目的。源:InputStream Reader 一定是被读取的。 目的:OutputStream Writer 一定是被写入的。2、处理的数据是否是纯文本的数据?是:使用字符流。Reader Writer 否:使用字节流。 InputStream OutputStream 到这里,两个明确确定完,就可以确定出要使用哪个体系。接原创 2016-04-28 13:05:38 · 2794 阅读 · 0 评论 -
Java---IO加强(2)
转换流★转换流功能1:充当字节流与字符流之间的桥梁需求:模拟英文聊天程序,要求: (1) 从键盘录入英文字符,每录一行就把它转成大写输出到控制台; (2) 保存聊天记录到字节流文件。要求1的设计分析:1)需要从键盘接收录入,得用System.in,它是字节输入流InputStream; 2)需要处理字符,可以自己把字节强转成字符,也可以用字符流; 3)需要类似readLi原创 2016-04-26 00:38:11 · 5402 阅读 · 0 评论 -
Java---练习:文件切割与合并(1)
实现对大文件的切割与合并。 按指定个数切(如把一个文件切成10份)或按指定大小切(如每份最大不超过10M),这两种方式都可以。示例程序说明: 文件切割:把一个文件切割成多个碎片,每个碎片的大小不超过1M。自己可把功能进一步扩展:切割前的文件名、长度,切割后的碎片个数、文件名等信息可写到第一个碎片中或另外用properties把这些写到配置文件中。 文件合并:这里简单假设已知被合并目录的File原创 2016-04-27 11:32:25 · 6551 阅读 · 0 评论 -
Java---练习(面试题) :字符串截取(1)
在java中,字符串“abcd”与字符串“ab你好”的长度是一样,都是四个字符。 但对应的字节数不同,一个汉字占两个字节。 定义一个方法,按照指定的字节数来取子串。 如:对于“ab你好”,如果取三个字节,那么子串就是ab与“你”字的半个,那么半个就要舍弃。如果取四个字节就是“ab你”,取五个字节还是“ab你”。上面给出的是在gbk编码下的截取字符串。 下面我写了个代码,可以在utf-8和gb原创 2016-04-27 00:07:43 · 10540 阅读 · 0 评论 -
Java---IO加强(1)
RandomAccessFile★随机访问文件,自身具备读写的方法。new RandomAccessFile()之后,若文件不存在会自动创建,存在则不创建。——该类其实内部既封装了字节输入流,又封装了字节输出流。 该类若用write()方法写整数,每次只写它的最后一个字节。而采用writeInt()方法,则可把一个整数完整地写入。 ★通过skipBytes(int x),seek(int x)来达原创 2016-04-22 12:35:35 · 3161 阅读 · 0 评论 -
Java---练习(面试题) :字符串截取(2-最终版)
在java中,字符串“abcd”与字符串“ab你好”的长度是一样,都是四个字符。 但对应的字节数不同,一个汉字占两个字节。 定义一个方法,按照指定的字节数来取子串。 如:对于“ab你好”,如果取三个字节,那么子串就是ab与“你”字的半个,那么半个就要舍弃。如果取四个字节就是“ab你”,取五个字节还是“ab你”。上面给出的是在gbk编码下的截取字符串。 下面我写了个代码,可以在utf-原创 2016-04-28 13:49:00 · 3787 阅读 · 0 评论 -
Java---常用基础面试知识点
综合网上的一点资源,给大家整理了一些Java常用的基础面试知识点,希望能帮助到刚开始学习或正在学习的学员。1、抽象抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。2、继承继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方原创 2016-04-28 20:47:42 · 5111 阅读 · 0 评论 -
Java---文件的切割与合并,已经实现图形界面(工具)
实现对任意文件的切割,实现对切割后的文件的合并。上次只写了特定目录下的文件切割与合并,有点遗憾, 这次,我写了一个图形界面来实现对文件的切割与合并。文件切割: 用户可以自己选择需要切割的文件, 软件会自动将切割后的文件全部放入这目录下的一个新文件夹当中去的。 每分割一个新的文件,它都会自动生成一个新文件夹,新文件夹不会重名,它是根据需要切割的文件名按和后缀加了一个字符串命名的文件夹。用户可以原创 2016-04-29 15:15:56 · 5520 阅读 · 1 评论 -
Java---网络编程(4)-C/S-B/S
C/S 与 B/S☆ C/S ( Client/Server ) 客户端和服务端的特点1、客户端和服务端的软件都需要程序员进行编写。 2、客户端维护起来较为麻烦。(缺陷) 3、客户端的存在可以将一部分运算分离到客户端来运行,减轻了服务器端的压力。(优势)☆ B/S ( Browse/Server ) 浏览器和服务端的特点1、客户端不用程序员编写,直接使用系统中具备的浏览器软件作原创 2016-05-12 00:02:26 · 9790 阅读 · 0 评论 -
Java---类反射(2)---类反射加强
经过前面的一篇博客,Java—类反射(1),相信大家对类反射有了一定的了解了。 下面来进行对类反射的加强,了解一下怎么通过类反射去new一个对象, 怎么通过类反射去访问其他类的方法。 怎么通过类反射去访问其他类的成员变量。大家也许认为一个类的私有方法,私有的成员变量是其他类访问不到。但是,类反射是可以通过暴力访问去访问的。还有:最后要模拟Java内省的功能类的调用(调用类中的成员)★ 构造类对原创 2016-05-02 16:13:10 · 6086 阅读 · 0 评论 -
Java---类反射(1)---类反射入门和基础
什么是类反射☆什么是反射JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制。反射(Reflection)是Java程序开发语言的特征之一,它允许运行中的Java程序对自身进行检查, 也称自审,并能直接操作程序的内部属性。例如,使用它能获得Java原创 2016-05-01 15:21:39 · 6917 阅读 · 0 评论 -
Java-单机版的书店管理系统(练习设计模块和思想_系列汇总)
介绍:本软件系列到此,我已经全部写完了。项目练习目标 :1、Java应用程序基本分析 2、培养面向对象编程的基本思想 3、Java基本设计模式综合应用 4、掌握分层和接口的基本设计 5、构建合理的Java应用程序包结构 6、综合应用JSE所学习的知识 7、在应用中合理使用集合框架 8、在应用中综合使用swing的常用组件 9、基本的表现层的实现机制 10、IO流和原创 2016-04-20 17:26:49 · 12430 阅读 · 4 评论 -
Java-单机版的书店管理系统(练习设计模块和思想_系列 八 )
本系列前面博客的链接:Java-单机版的书店管理系统(练习设计模块和思想_系列 七 ) http://blog.csdn.net/qq_26525215/article/details/51190696Java-单机版的书店管理系统(练习设计模块和思想_系列 六 ) http://blog.csdn.net/qq_26525215/article/details/51169277Java-单机原创 2016-04-20 00:46:09 · 10352 阅读 · 0 评论 -
Java-单机版的书店管理系统(练习设计模块和思想_系列 七 )
本系列前面博客的链接:Java-单机版的书店管理系统(练习设计模块和思想_系列 六 ) http://blog.csdn.net/qq_26525215/article/details/51169277Java-单机版的书店管理系统(练习设计模块和思想_系列 五 ) http://blog.csdn.net/qq_26525215/article/details/51136848Java-单机原创 2016-04-19 15:09:34 · 8352 阅读 · 0 评论 -
Java-单机版的书店管理系统(练习设计模块和思想_系列 六 )
本系列前面博客的链接:Java-单机版的书店管理系统(练习设计模块和思想_系列 五 ) http://blog.csdn.net/qq_26525215/article/details/51136848Java-单机版的书店管理系统(练习设计模块和思想_系列 四(2) ): http://blog.csdn.net/qq_26525215/article/details/51117135Jav原创 2016-04-16 17:48:28 · 8776 阅读 · 6 评论 -
Java-单机版的书店管理系统(练习设计模块和思想_系列 五 )
经过前几次的发博客。。 我发现这样发代码太费劲了。。所以我把目前我完成的源代码上传到百度云里面去了。 百度云链接: http://pan.baidu.com/s/1o7X1Kk6 链接如果失效了,请评论。。看到立刻补!本次增加进货模块, 进货明细面板做出来了。 完成了进货管理的数据层接口和进货管理明细的数据层接口。 在用户的逻辑层接口增加了一个方法,能获得所有进货人员的方法, get原创 2016-04-12 20:54:04 · 14751 阅读 · 8 评论 -
Java-单机版的书店管理系统(练习设计模块和思想_系列 四(2) )
说明:本博客为补全上篇-Java-单机版的书店管理系统(练习设计模块和思想_系列 四(1) )的,所以如果不懂,请先看上一篇。 本系列都是我一步一步学习来的, 所以,可能比较适合初学设计模块的人来学。现在补全我目前写的所以代码:公共类:用户类型枚举:UserTypeEnum类package cn.hncu.bookStore.common;/** * 功能:用户类型的枚举!<br/> * 定原创 2016-04-11 00:36:28 · 9088 阅读 · 0 评论 -
Java-单机版的书店管理系统(练习设计模块和思想_系列 四(1) )
本系列四介绍说明:主要是添加了Uuid模块,现在的uuid并不是由用户输入,而是我们通过软件内部自动生成(通过唱票模式),uuid是不会产生重复的!还有把主界面改了下,以后会改成登录页面的(待完善)。现在进入其他模块是通过菜单项进入的。增加了图书模块!注意: 每个模块先写哪个,我都是按照先后顺序来上代码的,从前往后依次写代码的。 注意是每个模块!!! 先写公共类和工具类再写模块的! 我公共类原创 2016-04-11 00:11:01 · 7797 阅读 · 0 评论 -
Java-单机版的书店管理系统(练习设计模块和思想_系列 三 )
介绍今天对系列二的一个添加用户的输入小bug进行了解决, 增加了用户模块的,删除用户,和修改用户模块。下面的代码是相对于系列二来说进行了修改或者是增加的类.先看AddPanel类的修改: 在收集参数的时候进行防范就可防止那个bug了。cn.hncu.bookStore.user.ui;AddPanel类:(添加用户模块)/* * AddPanel.java * * Created on _原创 2016-04-08 19:53:03 · 6655 阅读 · 2 评论 -
Java-单机版的书店管理系统(练习设计模块和思想_系列 二 )
今天对前面的代码有了小小的修改,让代码更加完善了一点。 至于用户唯一标识码uuid,会在以后修改成程序内部生成的, 现在的uuid还是由用户自己设置。今天对这个程序,添加了用户界面的表现层的一部分,增加了公共类 枚举, 下面贴出目前我写的这个程序的全部代码:我会逐渐的写完这个程序的,请大家放心!(需要实现的功能在这个书店管理系统的系列一可以找到,我为这个系列的文章已经分类了,方便大家寻找)原创 2016-04-07 21:40:36 · 7656 阅读 · 2 评论 -
Java-单机版的书店管理系统(练习设计模块和思想_系列 一 )
书店管理系统:项目练习目标 : 1、Java应用程序基本分析 2、培养面向对象编程的基本思想 3、Java基本设计模式综合应用 4、掌握分层和接口的基本设计 5、构建合理的Java应用程序包结构 6、综合应用JSE所学习的知识 7、在应用中合理使用集合框架 8、在应用中综合使用swing的常用组件 9、基本的表现层的实现机制 10、IO流和文件的基本操作 11、培养良好的Jav原创 2016-04-06 14:05:59 · 10374 阅读 · 10 评论 -
Java---设计模式app小软件汇总应用
写了一个app小软件,重点不在于软件,软件bug挺多,也没去修改。 这个小软件只是为了更好的说明和了解设计模块而做的。 Java 程序设计–包结构 Java程序设计的系统体系结构很大一部分都体现在包结构上 大家看看我的这个小软件的分层: 结构还是挺清楚的。 一种典型的Java应用程序的包结构: 前缀.应用或项目的名称.模块组合.模块内部的技术实现 说明: 1、前缀:是网站域名的倒原创 2016-04-06 02:21:35 · 10169 阅读 · 0 评论 -
Java---设计模块(装饰模式)
★ 场景和问题在不对原有对象类进行修改的基础上,如何给一个或多个已有的类对象提供增强额外的功能?★ 引例 写一个MyBufferedReader类,使它能够对字符流(如FileReader、InputStreamReader和PipedReader等)进行功能增强: (1) 提供带缓冲的myRead()方法,对原有的read()方法进行增速; (2)提供一个能够每次读取一行字符的myReadL原创 2016-04-04 00:58:41 · 4670 阅读 · 0 评论 -
Java---设计模块(值对象)
★ 场景和问题 在Java开发时,需要来回交换大量的数据,比如要为方法传入参数,也要获取方法的返回值,该如何能更好的进行数据的交互?★ 基本的编写步骤 ◎第1步:写一个类,实现可序列化(如果以后数据是往数据库里存的,那么可以不序列化,节省资源) ◎第2步:私有化所有属性,保持一个默认构造方法(public无参) ◎第3步:为每个属性提供get()、set()方法(如果是boolean型变量,原创 2016-04-03 23:32:06 · 2254 阅读 · 0 评论 -
Java---设计模块(工厂方法)
★ 场景和问题 Java程序开发讲究面向接口编程,隐藏具体的实现类,可是如何得到接口呢?工厂类的命名规范:***Factory 单例工厂方法的命名规范:getInstance()工厂的本质是“选择实现”工厂、接口和实现类之间的技术边界:工厂只负责选择实现,实现类才做真正的实现,而接口是限定到底实现什么东西和返回什么东西,三者之间分工明确、各负其责。下面为简单的工厂方法介绍和源代码: 接口Dep原创 2016-04-03 23:07:26 · 1840 阅读 · 0 评论 -
Java---设计模块(单例的变形)(多例)
设计模式1——单例变形(多例) ★ 缓存在单例中的使用 缓存在编程中使用很频繁,有着非常重要的作用,它能够帮助程序实现以空间换取时间,通常被设计成整个应用程序所共享的一个空间,现要求实现一个用缓存存放单例对象的类。 说明:该缓存中可以存放多个该类对象,每个对象以一个key值标识,key值相同时所访问的是同一个单例对象。给一个key值标识:package cn.hncu.pattern.muli原创 2016-04-02 19:21:56 · 9741 阅读 · 0 评论 -
【8】JAVA---地址App小软件(AddrDaoFile .class)(数据层)
实现数据进行文件的存储和读写。package cn.hncu.addr.dao;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.ObjectInputStre原创 2016-03-31 00:30:07 · 9503 阅读 · 0 评论 -
【7】JAVA---地址App小软件(AddrBusiness.class)(逻辑层)
这个。。。没多少好解释的。。。package cn.hncu.addr.business;import javax.swing.JOptionPane;import cn.hncu.addr.dao.AddrDaoFile;import sun.security.util.Length;public class AddrBusiness { //静态方法。访问的是同一个对象--也就是说就算原创 2016-03-31 00:26:11 · 9229 阅读 · 0 评论 -
【6】JAVA---地址App小软件(QueryPanel.class)(表现层)
查找模块: 年龄可进行段查找。 其他的都是模糊匹配。 空格为无用字符,会屏蔽的(除年龄)。 (如果在年龄中输入空格,会出现异常,当时没想到这点,要防护这点很容易的,但因为在这个小软件的编写过程,我主要学的是java项目开发的分层思想,软件可能bug比较多,望见谅。)/* * QueryPanel.java * */package cn.hncu.addr.ui;import javax原创 2016-03-31 00:24:02 · 9018 阅读 · 0 评论 -
【5】JAVA---地址App小软件(DeletePanel.class)(表现层)
删除地址的表现层类。 如果没有选中要删除的地址信息,会出现窗口提示: 删除地址界面:(无法修改数据,只能看) /* * DeletePanel.java * */package cn.hncu.addr.ui;import javax.swing.JFrame;import javax.swing.JOptionPane;import cn.hncu.addr.business.Add原创 2016-03-31 00:17:11 · 8947 阅读 · 0 评论 -
【4】JAVA---地址App小软件(UpdatePanel.class)(表现层)
修改地址信息的一个表现层类。 必须选中地址,才能修改,否则会弹出窗口提示, 修改地址界面: /* * UpdatePanel.java * */package cn.hncu.addr.ui;import javax.swing.JFrame;import javax.swing.JOptionPane;import cn.hncu.addr.business.AddrBusiness原创 2016-03-31 00:13:21 · 1710 阅读 · 0 评论 -
【3】JAVA---地址App小软件(AddPanel.class)(表现层)
添加地址信息界面。年龄和地址必须是数字,否则会弹出窗口提示。 地址信息不能为空。 /* * AddPanel.java * * Created on __DATE__, __TIME__ */package cn.hncu.addr.ui;import javax.swing.JFrame;import javax.swing.JOptionPane;import javax.swi原创 2016-03-31 00:07:10 · 1829 阅读 · 0 评论 -
【2】JAVA---地址App小软件(ListPanel.class)(表现层)
这个是表现层的主界面。 /* * ListPanel.java * */package cn.hncu.addr.ui;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JList;import javax.swing.JOptionPane;import cn.hncu.addr.busine原创 2016-03-31 00:01:09 · 1763 阅读 · 0 评论 -
【1】JAVA---地址App小软件(AddressApp.class)(初步接触项目开发的分层思想)(表现层)
这个是表现层的main方法。 实现的地址信息有: 姓名,性别,年龄,电话,地址。 实现的功能有: 增加地址; 删除地址; 修改地址; 查找地址:其中年龄的查找为年龄段的查找。数据存储的方式为文件存储和读写。分层的思想是:表现层调用逻辑层,逻辑层调用数据层。不可以反过来每个class文件都带了包名字,建好文件就可以了。/* * AddressApp.java * */package原创 2016-03-30 23:45:40 · 2010 阅读 · 0 评论 -
Java---软件试用次数(Properties类的简单使用)
编程练习(软件试用次数) 实现一个如下的软件小功能: 记录软件运行的次数并在每次运行时提示已经运行的次数。如果运行次数大于5次,软件不再运行并给出提示:试用次数已到,请注册!本代码只简单的介绍了软件的使用次数如何限定,很容易让人破解。 如果想让人难以破解,则自己加入算法,或者分开存储关键数据, 在运行时比对数据等等、、、package cn.hncu.property;import java原创 2016-03-17 22:19:45 · 2258 阅读 · 0 评论 -
Java---实力弹弹球,弹弹弹
直接上代码了。 微调按钮加画布画几个圆,再实现监听。。。package cn.hncu.threadDemo.thread2;import java.awt.Canvas;import java.awt.Color;import java.awt.Graphics;import java.awt.event.ActionEvent;import java.awt.event.ActionL原创 2015-12-22 22:59:23 · 2902 阅读 · 0 评论 -
Java---计算机贷款支付额计算(用对话框实现)
本例演示如何编写程序来计算贷款支付问题。下面是编写程序的步骤:1.提示用户输入年利率、年数和贷款总额2.利用年利率算出月利率3.通过前面的公式计算月支付额。4.计算总支付额,它是月支付额乘以12再乘以年数。5.在消息对话框中显示月支付额和总支付额。package cn.hncu.Chapter2;import javax.swing.JOptionPane;/** * @author原创 2015-12-19 00:03:26 · 3167 阅读 · 0 评论 -
Java---对象与类的封装
一、类和对象:package cn.hncu.Myclasslearn;/** * * @author hncu_chx * * Mylove amin *//**类是一种数据类型,声明一个类就是定义了一个数据类型。 类的实例(instance)是类的取值,对象就是类的变量,一个对象能引用一个实例, 就像一个int变量i能够保存int类型的一个常数。 声明对象原创 2015-12-15 13:49:58 · 1936 阅读 · 0 评论