Java SE
遇事不通请右转
新人报道,希望大家多多关注
展开
-
Java SE——专栏总集篇
前言:JAVA 语言,是相对于其他语言而言,门槛低,而且功能还强大的一门编程语言,本人十分看好这一门语言,但是,它也是有深度的,看过本人的《数据结构与算法》专栏的同学们有福了,因为本人在那个专栏中的编程以及讲解方法,都是向JAVA语言编程规范靠拢的,所以相对而言,学习过的同学,在观看本人博文学习的过程中会相对比较轻松些。当然,没有学习过的同学也不必心急,因为本人在本专栏的讲解过程中讲解也十分细腻...原创 2019-10-27 20:50:12 · 558 阅读 · 1 评论 -
详解 代理模式
现在,本人来讲解下 CGLib代理模式CGLib代理模式:CGLib代理模式:被代理的类,必须实现接口;CGLib代理的原理是:创建一个被代理类的子类对象,当然,若被代理类本身是final类,则,不能被代理!若被代理类本身是final类,则,不能被代理!被代理类中的final方法是不能被代理的;那么,现在本人来展示下 CGLib代理模式 的小工具:package com....原创 2020-04-03 22:29:23 · 148 阅读 · 0 评论 -
聊天室 —— 客户端
(请观看本人 聊天室总集篇 博文 —— 《综合项目实训 —— 聊天室》)本人还是先来展示用于存储客户端信息的model层:model层那么,本人现在来编写下 UserInfo类:UserInfo类:package edu.youzg.chat_room.client.model;public class UserInfo { private String id; private...原创 2020-02-20 22:42:03 · 201 阅读 · 0 评论 -
聊天室 —— 服务器端
(请观看本人 聊天室总集篇 博文 —— 《综合项目实训 —— 聊天室》)首先,由于我们来编写model层:model层而且,只要我们执行 注册/上线/注销 操作,就要在存储客户端信息的地方(一般在公司里,用的是数据库,但是,在此处重点考察的是基本知识点,本人就用一份XML文件来存储用户信息了)增加/查询/删除 客户端信息所以,本人就先来编写存储用户信息的类:UserInfo类:pac...原创 2020-02-20 21:56:28 · 272 阅读 · 0 评论 -
综合项目实训 —— 聊天室
聊天室本篇博文是SE阶段所学知识的一个大综合其中所运用的知识点包含了如下信息:继承、接口、抽象类、注解、XML文件解析、Properties文件解析Swing窗口编程技术、包扫描技术、Java几个编程原则、Java几种设计模式那么,就开始主要内容的讲解吧:首先是 服务器端:服务器端:请观看本人博文 —— 《聊天室 —— 服务器端》...原创 2020-02-20 22:58:57 · 443 阅读 · 0 评论 -
详解 缓冲区(Buffer 抽象类)
在本篇博文中,本人主要讲解NIO 的两个核心点 ——缓冲区(Buffer) 和通道 (Channel)之一的缓冲区(Buffer),有关NIO流的其他知识点请观看本人博文《详解 NIO流》缓冲区(Buffer):简介:缓冲区( Buffer ):一个用于特定基本数据类型的容器。由 java.nio 包定义的,所有缓冲区都是 Buffer 抽象类的子类。...原创 2020-03-05 10:35:32 · 271 阅读 · 0 评论 -
综合项目实训 —— easySwing
在本人之前的博文中,分别介绍了 XML文件的解析 和 窗口编程(Swing)那么,我们在学习XML文件的解析的时候,可能会想:XML文件有什么用呢?若是存储属性的话性能还不如properties文件。但是,XML文件能够在保证属性的同时,还能够保证级别所属。而我们在学习窗口编程的时候,也深刻地体会到了窗口编程代码量之大。那么,在本篇博文中,本人就来讲解下如何 通过扫描一个XML文件来实...原创 2020-02-12 22:21:38 · 176 阅读 · 0 评论 -
网络编程(2)—— 多客户端 现象的处理
在本人上一篇博文中,曾讲到了网络编程的基础知识,并且在最后,实现了一个服务器处理两个客户端的情况,那么,本人在这篇博文中来讲解一下 我们该如何处理多个客户端的情况因为在上一篇博文中《网络编程(1)——基础知识讲解》中,本人讲解了有关 网络编程 的基本知识点,那么,在这篇博文中,本人就不再对于较为简单的代码段进行过多的讲解了。那么,回归主题。首先,本人来给出一个抽象类:package com...原创 2019-12-01 23:22:53 · 244 阅读 · 0 评论 -
网络编程(1)——基础知识讲解
在这篇博文中,本人以展示网络编程的例子来为本人之后的博文做一下铺垫,同学们在学习这篇博文的时候,建议还是抱着和学习本人之前的博文——《XML 解析》和《Properties 解析》一样的态度——学习套路的方式学习这篇博文。因为本人将在之后的博文中同样地做出一个“工具”,来省略这里的步骤。那么,话不多说,开始我们这篇博文的学习吧:那么,本人先来展示一下一个服务器 和 一个 客户之间的连接的代码:...原创 2019-11-30 23:22:26 · 159 阅读 · 0 评论 -
数据库编程(6)—— 测试(test层)设计
通过本专题之前的所有博文的讲解,我们已经将所有的“工具”都做好了,现在我们来编写一个Test类来调用这些“工具”:package com.mec.mis.test;import java.util.List;import com.mec.mis.model.SDMModel;import com.mec.util.ClassTableFactory;import com.mec.ut...原创 2019-11-30 18:02:28 · 204 阅读 · 0 评论 -
线程编程 小例
想运行一个线程,是有两种途径:一是 通过 Thread类二则是 运行线程的途径是 实现 Runnable 接口原创 2019-11-28 19:03:17 · 115 阅读 · 0 评论 -
线程 与 锁(基础知识点 详解)
作为本专栏博文的最后一章节,本人在开头原创 2019-11-28 17:31:11 · 546 阅读 · 0 评论 -
数据库编程 —— 学生管理系统
在本人之前的博文《窗口编程》中曾编写过一个窗口来实现学生管理系统,但是,那个管理系统,只有对于数据的增添和显示功能,而且当我们关闭这个窗口后,再运行时,之前所录入的信息就不存在了,所以相对而言还是比较low的,那么,今天这篇博文所编写的代码,则能保证我们之前所录入的信息被保存,下一次运行时也会读取之前被保存的信息由于我们这次所要编写的部分太长,若是在一篇博文中来写的话,可读性太差,所以本人还是分...原创 2019-11-26 00:20:03 · 311 阅读 · 0 评论 -
数据库编程(5)—— serivce层设计
在本专栏之前的博文中处理了view层、model层、dao层,那么,在这篇博文中,本人就来实现serivce层这一层的代码,是用来初始化界面的下拉菜单而设计的。那么,在我们所要设计的窗口中,一共设置了 学校、院系、专业这三个下拉菜单,所以我们就在这个层中将这些列表初始化:package com.mec.mis.service;import java.util.ArrayList;imp...原创 2019-11-26 00:19:38 · 164 阅读 · 0 评论 -
数据库编程(4)—— dao层设计
从这里开始,逻辑就开始复杂了,如若同学们对于此处的代码有任何不解,请多看几遍,或者在下方的评论区留言。说到dao层,本人就要来进行一下讲解了:所谓的dao层,就是负责将 数据库中的数据 提取出来,并放在一个model层的 List 或 Map 中,并且当我们之后对于这些 List 或 Map 做出更改时,相应的数据库中的部分也要随之发生改变。简单来讲,就是负责处理 数据库 和 窗口之间的关系的...原创 2019-11-26 00:19:31 · 1196 阅读 · 0 评论 -
数据库编程(3)—— core层设计 与 浅谈 单例设计模式
作为本人《数据库编程》专题的第三篇博文,所讲解的代码,不仅我们要做的窗口所要用到的,而且,与我们未来要学习的一个非常重要的知识点——Java设计模式 有关。那么,本人先来介绍一下什么是单例、工厂设计模式吧:单例设计模式:首先,什么是“单例”呢?“单例”就是指某个类只产生了一个实例,并且自行实例化并向整个系统提供这个实例。那么,如何实现“单例模式”呢?单例有如下三个要求:一个单例模...原创 2019-11-26 00:19:25 · 329 阅读 · 0 评论 -
数据库编程(2)—— model层设计
在之前的博文中,我们初步制作了界面,但是还是有很多问题有待解决,那么,在这篇博文中,本人来讲解model层的设计。在代码展示的过程中,相信同学们会明白本人建立这个层的原因。在代码展示完后还是对于这个概念感觉迷茫的同学不用心急,本人将在这篇博文的代码展示后,进行讲解。首先,现在,本人在来给出一个存储学生所有信息的model:package com.mec.mis.model;public c...原创 2019-11-26 00:19:13 · 429 阅读 · 0 评论 -
数据库编程(1)—— 界面(view层)设计
由于我们最终的目的是做出一个通过界面能够和数据库互动的成果,所以,这篇博文所讲解 内容就相对简单些,只是对于界面的初始化说到界面编程,本人在本专栏之前的博文——《窗口编程》中讲到过,若是有对这个知识点有疑问的同学,可以去看看。况且,本专题博文的主讲知识点也不是这个。那么,本人也就不在这里多浪费笔墨了,现在就直接给出我们本专题所要用到的界面:首先是一个帮助我们设置 界面 的接口:packa...原创 2019-11-26 00:19:04 · 778 阅读 · 0 评论 -
数据库编程(6)—— 测试(test层)设计
我们的所有的代码都已经编写完成了,那么,现在,本人来给出一个测试类,用于输出我们所编写的窗口:package com.mec.mis.test;import java.util.List;import com.mec.mis.model.SDMModel;import com.mec.util.ClassTableFactory;import com.mec.util.Databas...原创 2019-11-26 00:18:51 · 216 阅读 · 0 评论 -
浅谈 jdbc包 与 Driver
可能会有同学会有疑问,为什么本人要写这篇博文。本人在这里来解释一下:因为我们如果学到有关数据库的操作的知识时,我们很有可能会碰到JDBC(这都是后话了,本人对于数据库的知识,将会在下篇博文中讲述),并且本人在学习到有关 数据库 的知识时,忽然感到很迷茫,为什么呢?因为本人遇到了如下语句:Class.forName(propertiesParser.value("driver"));priva...原创 2019-11-24 18:39:08 · 344 阅读 · 0 评论 -
1064 关于用navicat保存设置外键的表时报错 的解决方法
这个问题纠结了本人两天时间,最终终于解决了。但是,在本人解决的过程中,在网上查找的前辈们的解决方法,都是通过修改SQL预览那里的代码解决的。但是呢,本人由于初学数据库的知识点,所以对于代码那里还是不能理解的。所以,在本人通过外键那里的设置,解决了这个问题后,本人便迫不及待地来分享下解决这个问题的方法,希望能帮助到正在焦头烂额查找解决方法的同学!首先,本人先来展示一下报错的界面信息:那么,我们该...原创 2019-11-23 00:01:19 · 2160 阅读 · 3 评论 -
反射机制(5)—— 反射机制 和 properties文件的联合使用
在本专题《详解 反射机制》之前的博文中,本人将所有有关 反射机制的基本使用方式都讲解完了,但是,为什么本人还要用一片博文来展示 反射机制 和 properties文件的联合使用 呢?答曰:反射机制和properties文件或是和XML文件的联动,是我们后期学习中框架那里的核心。所以,本人先来浅浅地讲解一下基本使用方法:反射机制 和 properties文件的联合使用:那么,现在,本人通过一个...原创 2019-11-21 19:27:44 · 348 阅读 · 0 评论 -
反射机制(4)—— 方法 的处理
有关反射机制的全部内容,请观看本人的同专栏博文——《详解 反射机制》接之前的同专题博文,本人来继续讲解首先是 获取方法 的讲解:获取 方法 的方式:1.获取 所有 “外部可视”的方法:Method[] methodSet = klass.getMethods();//klass是我们通过上面的提到的三种方式取得的2.获取 所有的方法:Method[] methodSet = kl...原创 2019-11-21 19:12:55 · 102 阅读 · 0 评论 -
反射机制(3)—— 成员变量 的处理
有关反射机制的全部内容,请观看本人的同专栏博文——《详解 反射机制》接之前的同专题博文,本人来继续讲解获取 成员变量 的方式:1.获取 所有“外部可视”成员:Field[] fieldSet = klass.getFields();//klass是我们通过上面的提到的三种方式取得的2.获取 所有成员:Field[] fieldSet = klass.getDeclaredField...原创 2019-11-21 19:09:38 · 114 阅读 · 0 评论 -
反射机制(2)—— 构造方法 的处理
有关反射机制的全部内容,请观看本人的同专栏博文——《详解 反射机制》在前一本专题博文中,我们了解了如何获取 class对象,那是我们使用反射机制的基础,接下来,本人会按照顺序讲解对于 构造方法、成员变量 以及 方法的处理。获取 构造方法 的方式:1.获取所有 “外部可视”的构造方法:Constructor[] constructorSet = klass.getConstructors()...原创 2019-11-21 19:03:18 · 123 阅读 · 0 评论 -
反射机制(1)—— 获取 class对象 的方式
有关反射机制的全部内容,请观看本人的同专栏博文——《详解 反射机制》在获取上述的属性、成员、方法等之前,我们必须要先获取相应的 class对象。所以,本人就在这个专题的开篇来介绍一下三种最常用的获取 class对象 方式吧:获取 class对象 方式:1、形如如下方式:Class klass = 类.class;2、形如如下方式:类类型 对象 = new 类类型();Class ...原创 2019-11-21 18:41:48 · 161 阅读 · 0 评论 -
1251 关于无法正常在navicat中新建连接 的解决方法
在我们的Java数据库学习过程当中,可能会遇到很多问题,就比如本人——在navicat中新建连接时,一直出现错误,如下图:这个问题导致本人无法正常连接,这才是第一步,就出现了本人无法解决的问题,这对于本人的自信心的打击可谓是巨大的,于是本人便去问家师,家师曰:“这种错误自查”。于是本人忽然顿悟,当我们以后在工作时,遇到了问题,是不会能够一直有一个能为你一直在答疑解惑的人,所以就需要我们自己去在网...原创 2019-11-20 18:36:01 · 6492 阅读 · 5 评论 -
详解 反射机制
“反射机制”,是一种RTI,即:运行时类型识别。这个知识点,也是本人用以让同学们能够区分 C语言 和 Java语言的编程区别开来的一个重要知识点,并且,在我们今后的项目编程,以及深入学习中,这种机制是至关重要的。那么,废话不多说,现在开始这篇博文的主题的讲解吧首先,本人先给出一个接口:IDoSomething.java:package com.mec.about_reflect.core;...原创 2019-11-17 17:32:35 · 228 阅读 · 0 评论 -
Properties 解析
在本人之前的博文《XML解析》中曾经讲解过XML文件,但是,XML文件存储的时候要用“标签”来修饰代码,有时候用起来比较麻烦,那么,本人在这篇博文中将讲解一种只存储“键值对”的文件——Property文件Property文件的内容,是纯“键值对”文件,现在,本人通过给出一个例子来为大家介绍这种类型的文件的存储以及读取:首先,本人给出一个人的信息:name= the fanextname= ...原创 2019-11-11 23:34:11 · 260 阅读 · 0 评论 -
静态块 与 本地块
这篇博文是本人在学习过程中,发现的一种很奇怪的代码块的书写格式,但是,在本人在网页上查找相关内容时,发现给出的解释几乎各有其说,于是,本人通过和家师讨论 以及 上机的反复验证,得出了正确的、合理的结论。现在专门写一篇博文,来告知同学们这两种代码书写格式的相关知识点。静态块:静态块 具有如下特征:1.书写格式如下:static { 代码段;}2.静态块 必须且仅执行一次:当该类初次被...原创 2019-11-10 20:24:12 · 179 阅读 · 2 评论 -
XML 解析
<?xml version="1.0" encoding="UTF-8"?><students> <student id="032312" name="右转哥的忠实粉丝" sex="男"> <hobby name="支持右转哥"></hobby> <hobby name="学习右转哥"></hobby> ...原创 2019-11-10 19:58:20 · 277 阅读 · 0 评论 -
浅谈Swing —— 窗口编程
为了这篇博文,本人已经准备了好久了,但是,本人现在却很气愤一点,至于气愤的是什么,本人就先卖个关子,在文章末尾再来揭秘。那么,直接进入我们这篇博文的主题吧!(友情提示:在观看本人这篇博文之前,请先观看本人同专栏博文——《侦听者模式》)在本人《编程语言初学者》专栏中仅有一篇博文,它几乎涵盖了C的所有“初学者”最基本的使用的知识点,那就是——《(带头节点的链表) 宿舍管理系统》。运行后的界面如下...原创 2019-11-09 02:13:48 · 542 阅读 · 0 评论 -
监听者模式/观察者模式
在这篇博文中,本人要讲解一种Java程序中很重要的一种设计模式——侦听者模式,通过这个模式,我们可以通过生成匿名内部类,来实现直接对于接口的对象的调用,并且在我们生成使用方法之前,我们就可以调用其中的方法。那么,开始我们这篇博文的主题吧。本人先来给出一个接口:package com.mec.about_listener.core;public interface IMecListener ...原创 2019-11-06 23:14:18 · 1557 阅读 · 1 评论 -
详解 接口
在本篇博文的内容之前,本人要提醒一点,这个知识点,虽然可能会在现在看起来不是很有用,但是本人能够打包票的说,这篇博文的知识点,和class同等重要,那么,开始我们这篇博文内容的讲解吧!我们的每一个程序都有一个关键字——class.那么,在本篇博文中,本人要讲一个和class同等级的关键字——interface我们知道:以class开头的文件是 类,而以interface开头的文件,就是接口...原创 2019-11-02 21:50:23 · 153 阅读 · 0 评论 -
HashMap
本篇博文的知识点,在我们的日常生活中,应用十分广阔。比如:每个学生,都有自己的对应的学号、每一个公民,都有自己的身份证号… … 相信看到这里,有的同学基本上已经猜到了这个类的主要用途。那么,话不多说,我们开始主题的讲解吧!首先,本人要介绍一个概念——“键值对”(即:一个编号对应一个值)。那么,学习本篇博文的同学,建议先观看本人《JAVA SE》专栏的博文《浅谈 泛型 与 基本类型的封装类》,因...原创 2019-10-27 02:13:52 · 154 阅读 · 0 评论 -
阶段性复习与应用——复数的四则运算
看到这篇博文的同学们,大多数都学习了之前的博文了,那么,现在,我们通过 “复数的实现” 这一项目,来复习一下之前所有博文中的重要知识点!首先,我们现在来构建一个类,来存储这个复数的 实部 和 虚部:package com.mec.complex;public class Complex { private double real; private double vir; }现在,...原创 2019-10-21 00:35:29 · 244 阅读 · 0 评论 -
详解 方法的覆盖 —— toString() 与 equals()的覆盖
在学习本篇博文前,建议先学习完本人的博文——《工具的抽象与分层——继承(下)》在本人之前的博文中曾讲过“基类”的知识,那么,本篇博文中的主题——Object类 和 基类的知识就密切相关了,那么,我们就直接进入主题吧。Object类 是JAVA所提供的一个类类型,且是 所有类的基类。因为所有类都继承于 Object类,所以,Object类的方法 自然而言就成为 其他类的方法。而这些方法,...原创 2019-10-20 22:28:38 · 432 阅读 · 0 评论 -
详解 final 和 static 关键字
在我们上一篇博文中提到了 fianl 这个关键字,对于这个关键字,本人在初学时也耗费了极大地心血,甚至和师兄进行了激烈的讨论,并且,在我们讨论、尝试 以及 翻阅各种资料,最终得出了合适、易懂的解释。现在,本人来介绍一下final这个关键字:final 用途:很多的编程语言中,都会有某种方法,告知编译器有一段数据是不变的。在我们之前学习过的C语言中,宏就是满足这一要求的关键字。那么,相对地...原创 2019-10-16 16:23:13 · 152 阅读 · 0 评论 -
构造方法 与 方法重载
在上一章博文《JAVA 基础讲解》中,我们了解了JAVA编程语言的优点、基本输出方法、以及八大基本类型 和 类 的概念。那么,本人在这一篇博文中位同学们介绍两个在JAVA语言中两种十分常见的手段——构造方法 和 方法重载。首先,本人来讲解一下方法: JAVA语言中的 方法,就相当于我们在C语言中的 函数。(在我们学习JAVA的前几节课,我想声明一点:我们学习C语言虽然有很多和JAVA语言是一致...原创 2019-10-15 21:24:01 · 330 阅读 · 0 评论 -
JAVA 基础讲解
Hello,老同学们,又见面啦,新同学们,你们好哦。在看完本人的《数据结构与算法》专栏的博文的老同学,恭喜你们在学习本专栏时,你们将会发现好多知识点都将结果,都易于理解,那么,没看过的同学也不必心急,只需在页面左上角点击本博主的头像,在弹出页面的左边分类专栏那里就能找到《数据结构与算法》专栏啦!!!当然,实在着急的同学也可以直接开始JAVA的学习,那么,话不多说,开始我们《JAVA SE》专栏...原创 2019-10-09 00:50:28 · 472 阅读 · 0 评论