摘要: 1.虚拟机运行的字节码不同。 JVM运行的是Java字节码: .java文件经过编译,生成Java字节码保存在.class文件中,JVM通过解码.class文件来运行java程序。 DVM运行的是Dalvik字节码: .java文件先经过编译,生成java字节码保存在.class文件中。 然后由SD 阅读全文
posted @ 2019-08-04 22:01 黎先生 阅读(426) 评论(0) 推荐(0)
摘要: 1.方法分类 \\s* 可以匹配空格、制表符、换页符等空白字符的其中任意一个。 2.代码示例: 运行结果 replace和replaceAll是JAVA中常用的替换字符的方法,它们的区别是 (1) replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(C 阅读全文
posted @ 2019-08-04 22:00 黎先生 阅读(440) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2019-08-04 21:54 黎先生 阅读(470) 评论(0) 推荐(0)
摘要: 一、概述 java的运算符,分为四类: 算数运算符、关系运算符、逻辑运算符、位运算符 算术运算符(9):+ - * / % ++ -- 关系运算符(6):== != > >= < <= 逻辑运算符(6):&& || ! ^ & | Java基本数据类型 数值类型: 整型:byte、short、int 阅读全文
posted @ 2019-08-04 21:53 黎先生 阅读(262) 评论(0) 推荐(0)
摘要: Java中有两种类型的数组: 基本数据类型数组; 对象数组; 当一个对象使用关键字“new”创建时,会在堆上分配内存空间,然后返回对象的引用,这对数组来说是一样的,因为数组也是一个对象。 一维数组 在以上代码中,arr变量存放了数组对象的引用;如果你创建了一个空间大小为10的整型数组,情况是一样的, 阅读全文
posted @ 2019-08-04 21:51 黎先生 阅读(3157) 评论(0) 推荐(0)
摘要: 从 JDK1.2 版本开始,Java 把对象的引用分为四种级别,从而使程序能更加灵活的控制对象的生命周期。这四种级别由高到低依次为:强引用、软引用、弱引用和虚引用。 一、强引用(Strong Reference) 强引用就是我们经常使用的引用,其写法如下: 只要还有强引用指向一个对象,垃圾收集器就不 阅读全文
posted @ 2019-08-04 21:50 黎先生 阅读(298) 评论(0) 推荐(0)
摘要: 一、什么是装箱?什么是拆箱? 首先,Java为每种基本数据类型都提供了对应的包装器类型。 在Java SE5之前,如果要生成一个数值为10的Integer对象,必须这样声明: 而从Java SE%开始就提供了自动装箱的特性,如果要生成一个数值为10的Integer对象,只需要这样声明: 这个过程中会 阅读全文
posted @ 2019-08-04 21:45 黎先生 阅读(230) 评论(0) 推荐(0)
摘要: 关于boolean占几个字节,众说纷纭,虽然boolean表现出非0即1的“位”特性,但是存储空间的基本计量单位是字节,不是位。所以boolean至少占一个字节。 JVM规范中,boolean变量作为int处理,也就是4字节;boolean数组当做byte数组处理。 转载自:https://blog 阅读全文
posted @ 2019-08-04 21:42 黎先生 阅读(335) 评论(0) 推荐(0)
摘要: https://www.cnblogs.com/liuling/archive/2013/05/05/intAndInteger.html https://www.jianshu.com/p/08010144d40f 阅读全文
posted @ 2019-08-04 21:42 黎先生 阅读(150) 评论(0) 推荐(0)
摘要: 一、什么是序列化与反序列化? java 序列化是指把java 对象转换成字节序列的过程; java 反序列化是指把字节序列恢复为java 对象的过程。 二、为什么要用序列化与反序列化 在 为什么要用序列化与反序列化 之前我们先了解一下对象序列化的两种用途: 1、把对象的字节序列永久地保存到硬盘上,通 阅读全文
posted @ 2019-08-04 21:40 黎先生 阅读(302) 评论(0) 推荐(0)
摘要: MVC(Model、View、Controller) 一、什么是MVC? 是一种软件架构的思想,将一个软件按照模型、视图、控制器进行划分。 其中,模型用来封装业务逻辑,视图用来实现表示逻辑,控制器用来协调模型与视图(视图要通过控制器来调用模型,模型返回的处理结果也要先交给控制器,由控制器来选择合适的 阅读全文
posted @ 2019-08-04 21:39 黎先生 阅读(418) 评论(0) 推荐(0)
摘要: java.lang 这个是系统的基础类,比如String等都是在这里面的,这个package是唯一一个可以不用import就可以使用的package java.io 这里面是多有输入输出有关的类,比如文件操作等等 java.net 这里面是与网络有关的类,比如URL,URLConnection等 j 阅读全文
posted @ 2019-08-04 21:38 黎先生 阅读(537) 评论(0) 推荐(0)
摘要: 一、概念理解 1、无状态的HTTP协议 协议,是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则,超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器。 HTTP协议是无状态的协议。一旦数据交换完毕,客户端与服务器端的连 阅读全文
posted @ 2019-08-04 21:37 黎先生 阅读(195) 评论(0) 推荐(0)
摘要: 1、什么是Java类中的反射? 当程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言。 我们认为 Java 并不是动态语言,但是它却又一个非常突出的动态相关的机制,俗称:反射。Reflection 是Java 程序开发语言的特征之一,它允许运行中的 Java 程序获取自身的信息,并且可以操 阅读全文
posted @ 2019-08-04 21:36 黎先生 阅读(524) 评论(0) 推荐(0)
摘要: 一、常量池(Constant pool) Java代码被编译成class文件时,会生成一个常量池(Constant pool)的数据结构,用以保存字面常量和符号引用(类名、方法名、接口名和字段名等)。 很简单的一段代码,通过命令 javap -verbose 查看class文件中 Constant 阅读全文
posted @ 2019-08-04 21:35 黎先生 阅读(293) 评论(0) 推荐(0)
摘要: 一般面试中java Exception(runtimeException )是必会被问到的问题 RuntimeException是那些可能在 Java 虚拟机正常运行期间抛出的异常的超类。可能在执行方法期间抛出但未被捕获的RuntimeException 的任何子类都无需在 throws 子句中进行 阅读全文
posted @ 2019-08-04 21:33 黎先生 阅读(3315) 评论(0) 推荐(1)
摘要: extends 泛型中extends的主要作用是设定类型通配符的上限 要理解这句话,我们先从一个例子来看 我们使用Apple继承了Fruit类,然后建立了两个list,一个容纳的是apple,一个容纳的是fruit。 按照常理来说,因为Apple继承了Fruit,List<Apple>应该也是Lis 阅读全文
posted @ 2019-08-04 21:22 黎先生 阅读(2152) 评论(0) 推荐(1)
摘要: 一、什么是泛型? 泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢? 顾名思义,就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(类型形参),然后在使用或调用时传入具体的类型(类型实参)。 泛型的 阅读全文
posted @ 2019-08-04 21:19 黎先生 阅读(223) 评论(0) 推荐(0)
摘要: 一、什么是构造方法? 普通方法用来定义对象的功能行为,构造方法用来初始化。 1.构造方法是类的一种特殊方法,用来初始化类的一个新的对象。 2.Java 中的每个类都有一个默认的构造方法,它必须具有和类名相同的名称,而且没有返回类型(不能使用return语句)。 3.构造方法的默认返回类型就是对象类型 阅读全文
posted @ 2019-08-04 21:18 黎先生 阅读(1121) 评论(0) 推荐(0)
摘要: 首先,这三者一点关系都没有。 final 对于我们来说final是很基础的关键字。final可以用来修饰类、方法、变量。 1.final修饰的class,代表不可继承扩展。 2.final修饰的方法是不可以重写的。 3.final修饰的变量是不可以修改的。 这里所谓的不可修改对于基本类型来说,的确是 阅读全文
posted @ 2019-08-04 21:14 黎先生 阅读(364) 评论(0) 推荐(0)
摘要: 一、成员内部类 1.可以把一个内部类看做是一个成员。成员内部类可以无条件访问外部类的所有成员属性和成员方法。 2.当成员内部类拥有和外部类同名的成员变量或者方法时,默认情况下访问的是成员内部类的成员。如果要访问外部类的同名成员,需要以下面的形式进行访问。 3.外部类访问内部类,必须创建一个成员内部类 阅读全文
posted @ 2019-08-04 21:13 黎先生 阅读(336) 评论(0) 推荐(0)
摘要: 功能差不多,都用来进行线程控制。 sleep()方法 sleep是线程类(Thread)的静态方法。 sleep的作用是让线程休眠制定的时间,在时间到达时恢复,也就是说sleep将在接到时间到达事件事恢复线程执行。 例如 让调用的线程进入指定时间睡眠状态,使得当前线程进入阻塞状态,告诉系统至少在指定 阅读全文
posted @ 2019-08-04 21:09 黎先生 阅读(4968) 评论(1) 推荐(2)
摘要: 一、== Java中的数据类型,可分为基本数据类型和引用类型两类 1.基本数据类型 也成为原始数据类型,byte,short,char,int,long,float,double,boolean它们之间的比较,应该使用==,比较的是他们的值。 2.引用类型(类、接口、数组) 当它们用==进行比较的时 阅读全文
posted @ 2019-08-04 21:08 黎先生 阅读(424) 评论(0) 推荐(0)
摘要: 一、异常实现及分类 (一)异常类的结构图 上图可以简单展示一下异常类实现结构图,当然上图不是所有的异常,用户自己也可以自定义异常实现。 1.所有的异常都是从Throwable继承而来的,是所有异常的共同祖先。 2.Throwable有两个子类,Error和Exception。 其中Error是错误, 阅读全文
posted @ 2019-08-04 21:05 黎先生 阅读(258) 评论(0) 推荐(0)
摘要: 一、概念问题 i++:先使用i的值,然后再执行i = i + 1; 首先,我们先把a=0这个值拿来赋值给b,即此时b=0;而此时a的值已经经过自增变为了1。 执行顺序 (1) j = i; (2) i = i + 1; ++i:先执行i = i + 1,然后使用i; 首先,我们将a = 0这个值先自 阅读全文
posted @ 2019-08-04 21:04 黎先生 阅读(381) 评论(0) 推荐(0)
摘要: 一、JDK 英文名称(Java Development Kit),Java 开发工具包。jdk 是整个 Java 开发的核心,它集成了 jre 和一些好用的小工具。例如:javac.exe,java.exe,jar.exe 等。 JDK安装目录下面有 六个文件夹、一个src类库源码压缩包、和其他几个 阅读全文
posted @ 2019-08-04 21:03 黎先生 阅读(241) 评论(0) 推荐(1)
摘要: 一、访问控制 1.private 私有的(当前类可用) private 关键字是访问控制修饰符,可以应用于类、方法或字段(在类中声明的变量)。 只有在声明private类、方法或字段的类中引用这些类、方法或字段。在类的外部或者对于子类而言,他们是不可见的。 所有类成员默认访问范围是package访问 阅读全文
posted @ 2019-08-04 21:02 黎先生 阅读(597) 评论(0) 推荐(0)
摘要: 一、抽象类(Abstract Class) (一)概念 1.抽象类是关键字Abstract修饰的类,即为抽象类,但是没有方法体( 没有{ } ),只有声明方法,抽象方法强制子类覆盖。 2.抽象抽象即不能被实例化,不能创建对象(不能new, 但是可以super)。而不能被实例化就无用处,所以抽象类只能 阅读全文
posted @ 2019-08-04 21:01 黎先生 阅读(344) 评论(0) 推荐(1)
摘要: 一、方法的重写(@Override) 子类继承父类后,定义了一个和父类中一模一样的方法,即方法名和参数的定义完全相同。这时候子类要实现这个方法,就称为对父类方法的重写。 其实就是在子类中把父类本身有的方法重新写一遍,重写方法体。但要注意子类函数的访问权限不能低于父类。 总结: 1.发生在父类与子类之 阅读全文
posted @ 2019-08-04 21:00 黎先生 阅读(281) 评论(0) 推荐(0)
摘要: 一、封装 在面向对象设计方法中,封装(Encapsulation)是指一种将抽象性函数接口的实现细节部分包装、隐藏起来的方法,即屏蔽内部实现的细节,仅仅对外提供共有的方法/接口。 封装可以被认为一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。 要访问该类的代码和数据,必须通过严格的接口 阅读全文
posted @ 2019-08-04 20:58 黎先生 阅读(532) 评论(0) 推荐(0)