java
萧寒-秦月
这个作者很懒,什么都没留下…
展开
-
Java常见面试题
1、进程和线程的区别(1)进程是内存中运行的程序,是操作系统资源分配的基本单元,在windows操作系统中运行的每一个exe文件就是一个进程。每个进程都有独立的代码和数据空间(程序上下文),所以程序之间切换开销比较大。(2)线程是处理器任务调度和处理的基本单元。每个进程包含至少一个线程,当包含多个线程时,多个线程共享进程的堆和方法区资源,但是每个线程都有自己独立的虚拟机栈和本地方法栈,所以线程之间切换开销比进程切换要小很多。2、栈和堆的区别(1)申请方式不同。栈是由系统自动分配,而堆是.原创 2020-10-20 17:38:15 · 751 阅读 · 1 评论 -
Collections工具类reverse、fill、copy、max、min、swap等方法的演示
package cn.tianliangedu.jihe;import java.util.*;public class CollectionsTest { public static void main(String[] args) { testSort4(); } public static void testReverse() { List<Str...原创 2018-05-05 20:46:23 · 329 阅读 · 0 评论 -
List,TreeSet,TreeMap实现排序的几种方法
集合主要有以上几种,1、其中HashSet,TreeSet,HashMap,TreeMap是不可重复的,HashSet和HashMap需要通过重写hashCode()和equals来实现去重,而TreeSet和TreeMap需要通过实现Comparable或者Comparator接口来实现去重。2、HashSet和HashMap不能实现排序,而List,TreeSet,TreeMap可...原创 2018-05-05 20:12:26 · 1496 阅读 · 0 评论 -
遍历Map的2种方法
import java.util.*;import cn.tianliangedu.jihe.Student2;public class BianliMap { public static void main(String[] args) { test(); } public static void test() { Ma...原创 2018-05-05 17:43:42 · 249 阅读 · 0 评论 -
Eclipse如何新建Maven项目
一、新建项目我们新建一个Maven Project,菜单File -> new -> otherNext,在新窗口中,选中第一个,打勾,再next。二、修改pom文件<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSc...原创 2019-07-19 22:43:49 · 1008 阅读 · 0 评论 -
Maven的下载、安装、配置
一、下载安装先下载压缩包(Maven官网是http://maven.apache.org/),这里我下载Maven 3.0.5,并进行解压。二、配置环境变量(MAVEN_HOME、PATH)三、验证mvn -version四、Maven仓库配置1、创建本地仓库目录,如E:\maven-repository(不建议建立在系统盘C中)2、修改配置文件MA...原创 2019-07-19 22:59:22 · 125 阅读 · 0 评论 -
linux环境下配置jdk
linux安装软件分为3种形式,包括:yum安装、源码安装、二进制安装。本次采用二进制安装方式安装jdk,安装版本为jdk1.7 64位。步骤如下:1、查询linux的位数,32位还是64位:uname –a2、window环境下下载相应位数的jdk版本,本机是64位的,所以下载jdk7u79linuxx64.tar.gz,表示jdk1.7, 64位。3、rz -be:将jd...原创 2019-07-19 23:01:36 · 121 阅读 · 0 评论 -
xshell连接虚拟机的命令
一、linux虚拟机的设置xshell连接虚拟机,首先要在虚拟机上开启SSH服务,并且设置为开机启动sshd,命令如下:service sshd status(查看对应服务的状态) service sshd start(让ssh服务开启) chkconfig sshd on(设置开机启动sshd)二、xshell的设置点击新建,进行新建连接,需要在如下几个地方进行设置...原创 2019-07-19 23:03:20 · 2655 阅读 · 0 评论 -
GOF 23种设计模式——桥接模式(Bridge)
桥接模式(Bridge)是一种结构型设计模式。定义:桥接模式将抽象部分与实现部分分离,使他们都可以独立的进行变化。主要特点:把抽象(Abstraction)与行为实现(Implementation)分离开来,从而可以保持各部分的独立性以及应对他们的功能扩展。桥接模式的UML图如下:桥接模式的角色和职责:1. Client 调用端这是Bridge模式的调...原创 2019-07-19 23:08:43 · 341 阅读 · 0 评论 -
Java使用JDBC方式访问MySQL的一个简单例子
jdbc方式访问mysql需要导入mysql-connector-java-5.1.32.jar的这样的一个jar包。如果构建的是maven项目,pom文件里可以通过下面的方式添加该依赖。 <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency...原创 2019-07-25 09:34:26 · 234 阅读 · 0 评论 -
Java实现DBCP方式连接mysql数据库
1、概念:DBCP方式,即数据库连接池(Data Base Connection Pool)。2、作用连接池的引入,则主要解决了以上2类问题: 1.能给多用户分配连接或者给一个用户分配多个连接; 2.在适当的时候回收空闲连接以节省系统资源。3、实现原理: DBCP内部提供了一个“池子”,程序启动的时候,先创建一...原创 2019-07-25 10:07:02 · 320 阅读 · 0 评论 -
获取一个给定目录下的所有子目录和子文件
/** * 获取一个给定目录下的所有子目录和子文件 * @param dirPath * @return */ public static List<String> getAllSubFiles(String dirPath){ //1、判断目标目录是否为空 if(dirPath ==null || dirPath.trim().length()==0){...原创 2019-07-21 13:48:05 · 663 阅读 · 0 评论 -
类与类之间的几种关系
类与类之间的关系包括继承、实现、依赖、关联、聚合、组合。其中继承和实现比较简单,此处不再赘述。下面简单介绍一下我对依赖、关联、聚合、组合的理解。1、依赖:依赖就是一个类A使用到了另一个类B,而这种使用关系是具有偶然性的、临时性的、非常弱的,但是类B的变化会影响到类A。表现在代码层面,为类B作为参数被类A在某个method方法中使用。2、关联:关联体现的是两个类之间语义级别的一种强依赖关系,...原创 2019-08-30 16:31:07 · 890 阅读 · 0 评论 -
ArrayListTest的方法演示
package cn.tianliangedu.jihe;import java.util.*;public class ArrayListTest { private static ArrayList<String> list = new ArrayList<String>(); public static void main(String[] arg...原创 2018-05-05 20:53:04 · 496 阅读 · 0 评论 -
斐波那契数列
斐波那契数列:1,1,2,3,5,8,13,21...(1)递归实现斐波那契数列public class Fibonacci{ public static void main(String args[]) { System.out.println(f(8)); } public static int f(int n) { if(n==1) { retur...原创 2018-05-05 21:08:20 · 200 阅读 · 0 评论 -
多态示例
多态的优点在于,通过使用父类引用,屏蔽了不同子类之间的差异,能实现通用编程,对扩展功能支持良好(新功能的实现只需要新增相关的类,而无需修改老代码)。多态从代码上的表现是,在方法调用时,看起来调用的是父类的方法。但是实际在运行的时候,却是运行的子类方法的逻辑。多态的实现,有3个前提:继承;在子类中重写父类方法;父类引用指向子类对象(方法的参数或者返回值类型不使用具体子类的类型,而使...原创 2018-05-05 21:30:16 · 334 阅读 · 0 评论 -
java实现两种单例模式
单例模式是指,在整个应用进程中,有且最多只存在一个实例对象。分为饿汉模式和懒汉模式,下面就是java代码的实现。饿汉模式/** * 饿汉模式:来了就要吃,相当于有现成的 * @author Administrator * */public class EhanSingleTon { //1、私有的静态变量,已经new好了,所以是饿汉模式 private static Ehan...原创 2019-07-23 16:00:55 · 265 阅读 · 0 评论 -
Java IO实现从一个文件到另一个文件
此处使用了“utf-8”,避免了乱码问题,BufferedWriter也可以用PrintWriter代替。public static void readFile2File(String src,String dst) throws Exception{ //注意此处的字符集 BufferedReader br = new BufferedReader(new InputStream...原创 2019-07-24 15:01:06 · 175 阅读 · 0 评论 -
Date工具类(Date与String互转)
public class DateUtil { public static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); public static Date getDate(String date) throws Exception { return sdf.parse(date); } ...原创 2018-08-11 20:56:41 · 656 阅读 · 0 评论 -
正则工具类RegexUtil
1、无分组的match: public static String match(String regex,String input) { String res = null; Pattern p = Pattern.compile(regex); Matcher m = p.matcher(input); //if只匹配一次,whil...原创 2018-08-11 21:19:24 · 685 阅读 · 0 评论 -
获取目录下所有文件
两种方法:法一:返回一个ArrayList<File> private static ArrayList<File> fileList = new ArrayList<File>(); //获取某个目录下的所有文件,返回一个ArrayList<File> public static ArrayList<File&...原创 2018-08-11 20:54:43 · 1505 阅读 · 0 评论 -
对象序列化/反序列化流
通常用于读写引用类型数据。更多的应用场景是在网络环境下,比如在一台机器上将对象序列化后,通过网络传输到另一台机器上,再经过反序列化就可以使用了。我们可以这么理解,文件IO处理的是本地磁盘文件,网络IO则处理是的远程服务器或者网络中其他机器上的磁盘文件。ObjectInputStream。ObjectOutputStream。Student类实现Serializable接口im...原创 2018-05-15 21:42:57 · 133 阅读 · 0 评论 -
求距20080906这一天有3个月12天的日期,并格式化输出。
import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;public class DateTest { public static void main(String[] args) { test2(); }...原创 2018-05-14 21:24:58 · 174 阅读 · 0 评论 -
枚举类示例
创建枚举类:MenuConfig4public enum MenuConfig4 { FILE("文件"),EDIT("编辑"); private String desc; public String getDesc() { //设置相应的get、set方法 return desc; } public void setDesc(String desc) { this....原创 2018-05-06 10:19:51 · 409 阅读 · 0 评论 -
Calendar,Date常用方法示例
import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;public class DateTest { public static void main(String[] args) { testCa...原创 2018-05-06 10:01:12 · 491 阅读 · 0 评论 -
自定义Exception类
自定义Exception类:MyExceptionpublic class MyException extends Exception{ public MyException() { super(); } public MyException(String msg) { super(msg); }}测试类:MyExceptionTestpublic ...原创 2018-05-06 09:51:18 · 294 阅读 · 0 评论 -
java 工厂模式演示
父类:Weaponpublic class Weapon { public void FireInTheHole() { System.out.println("拿武器消灭你"); }}工厂类:WeaponFactorypublic class WeaponFactory { public static Weapon getWeapon(String type)...原创 2018-05-05 22:00:39 · 200 阅读 · 0 评论 -
java 单例模式演示
单例模式的好处是可以节省空间,因为每次new一个对象的时候,JVM就会为其分配一块内存空间。单例类Personpublic class Person { private Person() {} //构造方法私有 private static Person p; //申明一个该类的私有的静态变量 public static Person getInstance() //需是静态的...原创 2018-05-05 21:39:18 · 149 阅读 · 0 评论 -
jdk的安装与环境变量的设置
jdk的安装:注意事项:1、jdk的安装路径最好不要有中文汉字和空格。环境变量的设置:jdk安装后还需要设置环境变量,包括java_home、path和classpath(不区分大小写),其中classpath如果是jdk1.6以后的版本可以不用设置。右击我的电脑——属性——高级系统设置——系统变量(1)java_home(新建或编辑):值设置成jdk的安装目录。(2)path(新建或编辑):用来...原创 2018-05-15 20:28:20 · 278 阅读 · 0 评论