自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 收藏
  • 关注

原创 Java三大特性封装继承多态总结 ————【复习准备面试】

1.封装封装的定义:首先是抽象,把事物抽象成一个类,其次才是封装,将事物拥有的属性和动作隐藏起来,只保留特定的方法与外界联系为什么需要封装:封装符合面向对象设计原则的第一条:单一性原则,一个类把自己该做的事情封装起来,而不是暴露给其他类去处理,当内部的逻辑发生变化时,外部调用不用因此而修改,他们只调用开放的接口,而不用去关心内部的实现。2. 继承Java的类可以分为三类:类:使用cl...

2019-08-18 22:08:26 216

原创 开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。[面试题]

处理:1、 记录最多8条错误记录,循环记录,对相同的错误记录(净文件名称和行号完全匹配)只记录一条,错误计数增加;2、 超过16个字符的文件名称,只记录文件的最后有效16个字符;3、 输入的文件可能带路径,记录文件名称不能带路径。import java.util.LinkedHashMap;import java.util.Map;import java.util.Scanner;...

2019-08-10 14:31:27 1092

原创 查找兄弟单词——编程题

输入描述输出描述根据输入,输出查找到的兄弟单词的个数示例:题目描述太过于复杂了,直接看输入输出案例比较好理解。import java.util.Arrays;import java.util.Scanner;//寻找兄弟单词public class SearchBrotherwords { public static void main(String[] args...

2019-08-05 16:52:47 323

原创 代理模式--静态代理与动态代理 - 的区别联系

Proxy代理模式是什么?Proxy代理模式是一种结构型设计模式,主要解决的问题是:在直接访问对象时带来的问题代理是一种常用的设计模式,其目的就是为其他对象提供一个代理以控制对某个对象的访问。代理类负责为委托类预处理消息,过滤消息并转发消息,以及进行消息被委托类执行后的后续处理。使用场合如果需要委托类处理某一业务,那么我们就可以先在代理类中统一处理然后在调用具体实现类代理模式分类静态代...

2019-08-05 14:55:59 266

原创 Java集合框架————Stack栈; Queue队列;

Stack栈栈是一种先进后出的数据结构 浏览器的后退、编辑器的撤销、安卓Activity的返回等都属于栈的功能。在Java集合中提供有Stack类,这个类时Vector的子类。需要注意的是,使用这个类的时候使用的不是Vector类中的方法,并且在使用时不要进行向上转型。因为要操作的方法不是又List定义的,而是由Stack定义的。入栈 : public E push(E item)出栈 ...

2019-05-09 16:05:17 172

原创 Java集合框架————Map集合(3) Map集合使用Iterator输出(重点); 关于Map中key的说明; TreeMap子类;

Map集合使用Iterator输出Map接口与Collection接口不同,Collection接口有iterator()方法可以很方便的取得Iterator对象来输出,而Map接口本身并没有此方法。下面我们首先来观察Collection接口与Map接口数据保存的区别:在Map接口里面有一个重要的方法,将Map集合转为Set集合:public Set<Map.Entry<K, ...

2019-05-06 15:02:39 327

原创 Java集合框架————Map集合(2)Hashtable子类;ConcurrentHashMap子类

1.Hashtable子类JDK1.0提供有三大主要类:Vector、Enumeration、Hashtable。Hashtable是最早实现这种二元偶对象数据结构,后期的设计也让其与Vector一样多实现了Map接口而已。范例:观察Hashtablepublic class HashtableDemo { public static class TestDemo { ...

2019-04-16 18:38:58 544

原创 Java集合框架————Map集合(1)

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

2019-04-08 23:16:01 224

原创 Java集合框架————集合输出

在之前进行集合输出的时候都利用了toString(),或者利用了List接口中的get()方法。这些都不是集合的标准输出。如果从标准上来讲,集合输出一共有四种手段:Iterator、ListIterator、Enumeration、foreach。1.迭代输出:Iterator在JDK1.5之前,在Collection接口中就定义有iterator()方法,通过此方法可以取得Iterator接...

2019-03-29 18:49:03 237

原创 java集合框架————Set集合接口

Set接口与List接口最大的不同在于Set接口中的内容是不允许重复的。同时需要注意的是,Set接口并没有对Collection接口进行扩充,而List对Collection进行了扩充。因此,在Set接口中没有get()方法。在Set子接口中有两个常用子类:HashSet(无序存储)、TreeSet(有序存储)1.set接口常用字类范例:观察HashSet使用import java.ut...

2019-03-26 16:47:21 217

原创 java集合框架————List接口

1.List接口概述在实际开发之中,List接口的使用频率可以达到Collection系列的80%。在进行集合处理的时候,优先考虑List接口。首先来观察List接口中提供的方法,在这个接口中有两个重要的扩充方法 :List子接口与Collection接口相比最大的特点在于其有一个get()方法,可以根据索引取得内容。由于List本身还是接口,要想取得接口的实例化对象,就必须有子类,在Li...

2019-03-14 18:58:56 169

原创 java集合框架————java类集简介

1.java类集引出类集实际上就属于动态对象数组,在实际开发之中,数组的使用出现的几率并不高,因为数组本身有一个最大的缺陷:数组长度是固定的。由于此问题的存在,从JDK1.2开始,Java为了解决这种数组长度问题,提供了动态的对象数组实现框架–Java类集框架。Java集合类框架实际上就是java针对于数据结构的一种实现。而在数据结构之中,最为基础的就是链表。下面我们一起来回顾下链表的特点:...

2019-03-13 22:25:20 139

原创 java I/O———序列化

所有的项目开发一定都有序列化的概念存在。1.序列化的基本概念对象序列化指的是:将内存中保存的对象变为二进制数据流的形式进行传输,或者是将其保存在文本中。但是并不意味着所有类的对象都可以被序列化,严格来讲,需要被序列化的类对象往往需要传输使用,同时这个类必须实现java.io.Serializable接口。但是这个接口并没有任何的方法定义,只是一个标识而已。范例:定义可以被序列化对象的类...

2019-03-13 21:57:51 131

原创 java I/O———两种输入流

1.BufferedReader类BufferedReader类属于一个缓冲的输入流,而且是一个字符流的操作对象。在java中对于缓冲流也分为两类:字节缓冲流(BufferedInputStream)、字符缓冲流(BufferedReader)。之所以选择BufferedReader类操作是因为在此类中提供有如下方法(读取一行数据):String readLine() throws IOEx...

2019-03-08 11:47:25 121

原创 java I/O———System类对IO的支持

学习完PrintStream与PrintWriter后,我们发现里面的方法名都很熟悉。例如:print()、println(),实际上我们一直在使用的系统输出就是利用了IO流的模式完成。在System类中定义了三个操作的常量。标准输出(显示器) : public final static PrintStream out错误输出 : public final static PrintStrea...

2019-02-21 16:47:19 195

原创 java I/O———打印流

打印流解决的就是OutputStream的设计缺陷,属于OutputStream功能的加强版。如果操作的不是二进制数据,只是想通过程序向终端目标输出信息的话,OutputStream不是很方便,其缺点有两个:所有的数据必须转换为字节数组。如果要输出的是int、double等类型就不方便了打印流概念打印流设计的主要目的是为了解决OutputStream的设计问题,其本质不会脱离Outpu...

2019-02-13 13:51:50 184

原创 java I/O———内存操作流

内存流概念在之前所有的操作都是针对于文件进行的IO处理。除了文件之外,IO的操作也可以发生在内存之中,这种流称之为内存操作流。文件流的操作里面一定会产生一个文件数据(不管最后这个文件数据是否被保留)。如果现在需求是:需要进行IO处理,但是又不希望产生文件。这种情况下就可以使用内存作为操作终端。对于内存流也分为两类:字节内存流:ByteArrayInputStream、ByteArrayO...

2019-02-13 13:12:09 194

原创 java I/O———字符编码

1.常用字符编码在计算机的世界里面,所有的文字都是通过编码来描述的。对于编码而言,如果没有正确的解码,那么就会产生乱码。那么要想避免乱码问题,就必须清楚常见的编码有哪些GBK、GB2312:表示的是国标编码,GBK包含简体中文和繁体中文,而GB2312只包含简体中文。也就是说,这两种编码都是描述中文的编码。UNICODE编码:java提供的16进制编码,可以描述世界上任意的文字信息,但...

2019-02-13 12:51:53 140

原创 java I/O———转换流

1.转换流的基本使用现在为止已经知道了两种数据流:字节流和字符流。实际上这两种流是可以进行互相转换处理的。OutputStreamWriter:将字节输出流变为字符输出流(Writer对于文字的输出要比OutputStream方便)InputStreamReader:将字节输入流变为字符输入流(InputStream读取的是字节,不方便中文的处理)要想知道这两个类的实际意义,我们首先来...

2019-02-11 13:12:17 224 1

原创 java I/O———字节流与字符流的区别联系

通过上述这一系列流的讲解可以发现,使用字节流和字符流从代码形式上区别不大。但是如果从实际开发来讲,字节流一定是优先考虑的,只有在处理中文时才会考虑字符流。因为所有的字符都需要通过内存缓冲来进行处理。所有字符流的操作,无论是写入还是输出,数据都先保存在缓存中。范例:示范字节流输出与字符流输出区别如果字符流不关闭,数据就有可能保存在缓存中并没有输出到目标源。这种情况下就必须强制刷新才能够得到完整...

2019-02-11 12:52:06 250

原创 java I/O———字节流与字符流— 字符输入流(Reader)

Reader依然也是一个抽象类。如果要进行文件读取,同样的,使用FileReader。在上面讲到的Writer类中提供有方法直接向目标源写入字符串,而在Reader类中没有方法可以直接读取字符串类型,这个时候只能通过字符数组进行读取操作范例:通过文件读取数据字符流适合处理中文,字节流适合处理一切数据类型(对中文支持不好)...

2019-02-11 12:42:40 222

原创 java I/O———字节流与字符流— 字符输出流(Writer)

字符适合于处理中文数据,Writer是字符输出流的处理类,这个类的定义如下:public abstract class Writer implements Appendable, Closeable, Flushab与OutputStream相比多了一个Appendable接口。在Writer类里面也提供write()方法,而且该方法接收的类型都是char型,要注意的是,Writer类提供...

2019-02-10 20:49:15 328

原创 java I/O———字节流与字符流— 字节输入流(InputStream)

利用了OutputStream实现了程序输出内容到文件的处理,下面使用InputStream类在程序中读取文件内容。InputStream类的定义如下:public abstract class InputStream implements Closeable发现InputStream类只实现了Closeable接口,在InputStream类中提供有如下方法:读取数据到字节数组中,返...

2019-02-10 20:39:27 247

原创 java I/O———字节流与字符流—字节输出流(OutputStream)

File类不支持文件内容处理,如果要处理文件内容,必须要通过流的操作模式来完成。流分为输入流和输出流。在java.io包中,流分为两种:字节流与字符流字节流:InputStream、OutputStream字符流:Reader、Writer字节流与字符流操作的本质区别只有一个:字节流是原生的操作,而字符流是经过处理后的操作。在进行网络数据传输、磁盘数据保存所保存所支持的数据类...

2019-02-09 21:26:59 628

原创 java I/O———File文件操作类

如果要学好IO,必须清楚抽象类;IO的操作部分重点掌握两个代码模型。IO的核心组成就是五个类(File、OutputStream、InputStream、Reader、Writer)一个接口(Serializable)在Java.io包之中,File类是唯一一个与文件本身操作(创建、删除、取得信息…)有关的程序类。File类使用**java.io.File类是一个普通的类,直接产生实例化对象...

2018-12-13 11:56:34 154

原创 java———异常与捕获

几乎所有的代码里面都会出现异常,为了保证程序在出现异常之后可以正常执行完毕,就需要进行异常处理。先来看一下异常的继承类结构所有的异常都是由Throwable继承而来,我们来看他下面的两个子类Error和Exception.Error类描述了Java运行时内部错误和资源耗尽错误。应用程序不抛出此类异常,这种内部错误一旦出现,除了告知用户并使程序安全终止之外,再无能无力。这种情况很少出现。我...

2018-12-06 18:30:36 105

原创 java设计模式———单例设计模式

所谓的单例设计指的是一个类只允许产生一个实例化对象。范例:以上程序在进行对象实例化的时候调用了Singleton的无参构造。范例:使用private声明构造方法这个时候类中已经明确的提供了一个私有的构造方法,那么默认生成的无参构造不再产生,此时进行对象实例化的时候一定会有错误。Exception in thread "main" java.lang.Error: Unresolve...

2018-12-06 09:12:29 109

原创 java———jar命令

jar本质上也是一种压缩文件,里面保存的都是*.class文件。也就是说现在要实现某一个功能模块,可能有几百个类,最终交付给用户使用时,为了方便管理,就会将这些文件形成压缩包提供给用户。在JDK中提供实现jar文件操作的命令,只需要输入一个jar即可。对于此命令,有如下几个常用参数:1. “c”:创建新档案2. “f”:指定档案文件名3. “v”:在标准输出中生成详细输出package ...

2018-12-05 11:41:17 383

原创 java——访问控制权限详解

在java中提供有四种访问控制权限:private&lt;default&lt;protected&lt;public 。这四种访问控制权限的定义如下:对于public永远都可以访问,对于封装性而言主要是private、default、protected权限。范例:观察protected访问权限。package father;public class Father {// 此时定义...

2018-12-05 11:23:55 292

原创 包装类详解———java三大特殊类之三

①基本原理包装类就是将基本数据类型封装到类中。范例:自己定义一个包装类。class IntDemo { private int num ; public IntDemo(int num) { this.num = num ; } public int intValue() { return this.num ; }}...

2018-11-30 11:06:48 168

原创 Object类详解 ————JAVA三大特殊类之二

① Object简介Object是Java默认提供的一个类。Java里面除了Object类,所有的类都是存在继承关系的。默认会继承Object父类。即,所有类的对象都可以使用Object进行接收。范例:class Person{}class Student{}public class Test { public static void main(String[] args)...

2018-11-29 09:39:46 155

原创 JAVA之String、StringBuffer、StringBuilder 的区别

①String类是final类,也即意味着String类不能被继承,并且它的成员方法都默认为final方法。在Java中,被final修饰的类是不允许被继承的,并且该类中的成员方法都默认为final方法。在早期的JVM实现版本中,被final修饰的方法会被转为内嵌调用以提升执行效率。而从Java SE5/6开始,就渐渐摈弃这种方式了。因此在现在的Java SE版本中,不需要考虑用final去提升...

2018-11-26 23:03:12 84

原创 JAVA实现实现字符重复,用指定字符扩充字符串,移除字符串中的指定字符,字符串反转 不用直接反转的方法

import java.util.Scanner;public class StringsTest{ public static void main(String[] args){ //实现字符重复 Scanner scanner = new Scanner(System.in); while(true){ System.out.println("请输入被重复字符 ...

2018-11-24 22:05:24 166

原创 JAVASE之抽象类与接口

o 尽可能不要直接继承直接实现好的类,而继承抽象类或接口o 对象多态性的核心本质:方法的覆写o 如果子类没有进行指定方法的覆写,也就不存在对象多态性了。o 所以如果要对子类的方法做一些强制性的要求,就会用到抽象类。1.抽象类的定义与使用抽象类只是在普通类的基础上扩充了一些抽象方法而已,所谓的抽象方法指的是只声明而未实现的方法(即没有方法体)。所有抽象方法要求使用abst...

2018-11-22 18:03:19 114

原创 java之 接口的简单使用方法———停车场是否可以停下车的问题

public class Parkinglot{ public static void main(String[] args){ Parking parking = new Parking(8,4); Car bus = new Bus(); parking.park(bus); }}class Parking{ private int standardLength ...

2018-11-20 15:43:32 526

原创 初认识java 之输出个人信息(内含重载方法)

public class Peopleinformation{ private String name; private String sex; private int age; private String post; private String tel; private String adress; public Peopleinformation(String name,S...

2018-11-20 15:40:02 708

原创 初识java 之 猜数字游戏

import java.util.Random;import java.util.Scanner;public class Guessnum{ private final int value; public Guessnum(){ Random random = new Random(); this.value = random.nextInt(100);//产生随机数[0...

2018-11-20 15:33:52 138

原创 java学习(类与对象) 第二更 创建汽车对象 并录入汽车信息

最近学习了java的类与对象。java面向对象编程的有三大特征:①封装性所谓封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。简而言之就是,内部操作对外部而言不可见(保护性)②继承性继承是指它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展③多态性所谓多态就是指一个类实例的相同方法在不同情...

2018-11-12 11:31:58 1987

原创 初学Java:计算数组中最大值 ---计算数组中最小值----计算数组之和----实现两个数组----拼接数组截取

public class ArrayUtils{ //创建类(数组工具类) //1.计算数组中最大值 public static int arrayMaxElement(int [] data){ //创建方法 if(data == null){ //如果数组为空 //IllegalArgumentException 参数异...

2018-11-07 11:56:26 182

原创 写一个函数返回参数二进制中 1 的个数

比如: 15 0000 1111 4 个 1程序原型:int count_one_bits(unsigned int value){// 返回 1的位数}第一种方法int count_one_bits(unsigned int value){ int count = 0; while(value) { if(value%2 == 1) { count ++;...

2018-10-18 02:53:26 74

空空如也

空空如也

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

TA关注的人

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