自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 问答 (1)
  • 收藏
  • 关注

原创 类比较器—Comparator和Comparable

Comparable的例子:public class Book implements Comparable<Book> { private String name; private double price; public Book() { } public Book(String name, String price) { this.name = name; this.price = saveDouble2(pr

2020-12-23 19:41:52 140

原创 工厂设计模式

静态工厂设计模式:public interface IBook { public void print();}public class MathBook implements IBook{ @Override public void print() { System.out.println("我是数学书"); }}public class EnglishBook implements IBook{ @Override public

2020-12-23 15:44:36 70

原创 正则表达式

1、匹配单字符String str = "a";System.out.println(str.matches("a"));//trueSystem.out.println(str.matches("z"));//false2、匹配“\”String str = "\\";System.out.println(str.matches("\\\\"));//true3、匹配“\t”String str = "\t";System.out.println(str.matches("\t"))

2020-12-22 20:11:59 200

原创 Cloneable的使用

挺简单的,就不多说了,放这里一个例子大家应该能看的懂public class Person implements Cloneable{ private String mess; private Head head; public Person() { } @Override public String getMess() { return mess; } @Override public void setMe

2020-12-22 18:16:20 213

原创 Runtime使用

Runtime描述的是一种运行时,在java程序执行过程中,所有的java程序都一定要运行在JVM的进程中,那么就需要有一种类型可以描述但概念进程的相关的环境以及与之相关的处理操作,这样java设计的时候就设计了一个Runtime类,每一个JVM进程之中都会自动包含有一个Runtime类的实例化对象。Runtime的使用:导入Runtime的时候,我们需要注意,不要导入org.omg.SendingContext包下的RunTime,这个跟我们说的不是一回事,要导入lang包下的Runtime。Run

2020-12-22 15:53:29 301

原创 AutoCloseable的使用

当我们进行某些资源调用的时候,我们用完资源后需要进行关闭资源操作。其实java给我们提供了一个资源关闭接口供我们使用。它就是AutoCloseable。举个例子://接口public interface IOperateResources extends AutoCloseable{ public void sendMessage();}//资源操作类public class MyMessage implements IOperateResources{ private St

2020-12-22 14:18:01 3010 1

原创 ClassLoader讲解

JVM加载类的时候需要一个重要的系统变量——CLASSPATH,CLASSPATH在这里所所描述的就是类加载器,所以类加载器在程序运行的时候基于CLASSPATH,由CLASSPATH负责最终程序类的加载,从而实现整个程序代码加载的流程。看如下代码:System.out.println(Person.class.getClassLoader());System.out.println(Person.class.getClassLoader().getParent());System.out.prin

2020-12-21 22:21:57 200

原创 反射

为什么叫反射呢?既然有“反”就有“正”。我们先把“正”讲清楚。“正”也就是我们通常的new一个实例化对象。如下代码:Person person = new Person();person.run();package fanShe;public class Person { private String name; private String sex; private int age; public Person() { this("张三", "男", 18); } pub

2020-12-21 20:58:22 91

原创 AS出现乱码

1、新建的Java library,调试程序中控制台打印出现乱码,如下图所示:解决办法:在library的gradle文件中,修改如下:plugins { id 'java-library'}tasks.withType(JavaCompile) { options.encoding = "UTF-8"}java { sourceCompatibility = JavaVersion.VERSION_1_7 targetCompatibility = Jav

2020-12-21 20:03:38 473

原创 由浅入深Handler原理解析

一、Handler简介Handler机制主要分为4个部分:HandlerMessageMessageQueue(消息队列)Looper工作原理:每一个事件都是一个Message,添加进消息队列后,如果处理时间到了,Looper就会从消息队列中拿出来该Message发送给Handler进行处理。示例图如下:二、Handler简单使用 myHandler = new MyHandler(this); mDown.setOnClickListener(new V

2020-12-15 16:28:10 150

原创 观察者模式

首先定义观察者和被观察者接口观察者接口:/** * 观察者接口 */public interface ObserverImpl { void update(String str);}被观察者接口:/** * 被观察者接口 * */public interface ObservableImpl { void addObservaber(Observer obervaber); void deleteObservaber(Observer obervaber); v

2020-12-02 21:26:49 73

原创 注解

注解

2020-11-24 20:46:38 75

空空如也

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

TA关注的人

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