Java
做一棵白杨
你的手指有改变世界的力量。
展开
-
【深入理解JVM】:Java内存模型JMM
多任务和高并发的内存交互多任务和高并发是衡量一台计算机处理器的能力重要指标之一。一般衡量一个服务器性能的高低好坏,使用每秒事务处理数(Transactions Per Second,TPS)这个指标比较能说明问题,它代表着一秒内服务器平均能响应的请求数,而TPS值与程序的并发能力有着非常密切的关系。物理机的并发问题与虚拟机中的情况有很多相似之处,物理机对并发的处理方案对于虚拟机的实现也有相当大的参...转载 2018-06-17 15:33:37 · 180 阅读 · 0 评论 -
简单的日期格式的格式代码
简单的日期格式的格式代码使用事件模式字符串来指定时间格式。在这种模式下,所有的 ASCII 字母被保留为模式字母,这些字母定义如下:字符 描述 实例 G Era 指示器 AD y 四位数表示的年 2001 M 一年中的月 July 或 07 d 一月中的第几天 10 h 带有 A.M./P.M. 的小时(...原创 2018-12-03 10:46:36 · 4901 阅读 · 0 评论 -
java 中的引号嵌套问题
在java中一对引号是一个语句结束的标志,但有的时候我们需要在语句中使用引号,这个时候直接使用双引号是错误的。Java中的\表示的是转义字符的意思,如我们常见的\n,\r等,如果我们输出\,在Java中\\表示的是\的意思,在Java中想要在双引号使用双引号需要使用转义字符\。/** * * */ public static void main(S...原创 2018-11-20 09:44:25 · 5228 阅读 · 0 评论 -
synchronized 关键字
synchronized 关键字,代表这个方法加锁,相当于不管哪一个线程(例如线程A),运行到这个方法时,都要检查有没有其它线程B(或者C、 D等)正在用这个方法(或者该类的其他同步方法),有的话要等正在使用synchronized方法的线程B(或者C 、D)运行完这个方法后再运行此线程A,没有的话,锁定调用者,然后直接运行。它包括两种用法:synchronized 方法和 synchronize...原创 2018-11-22 17:10:08 · 165 阅读 · 0 评论 -
Java多线程理解
1、进程跟线程的区分进程:程序或者任务的执行过程,持有资源和线程(进程是资源和线程的载体)。线程:线程是系统中最小的执行单元,统一进程中有多个线程,线程共享进程资源。线程的交互之互斥与同步:2、Java对线程的支持java对线程的支持体现在提供了Runnable接口以及Thread类,他们都包含有个run方法,线程执行的代码写在run方法中。3、线程的创建与启动创建方式...原创 2018-10-09 19:14:03 · 352 阅读 · 0 评论 -
Java内部类
什么是Java内部类:内部类( Inner Class )就是定义在另外一个类里面的类。与之对应,包含内部类的类被称为外部类。内部类的主要作用:1. 内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类2. 内部类的方法可以直接访问外部类的所有数据,包括私有的数据3. 内部类所实现的功能使用外部类同样可以实现,只是有时使用内部类更方便内部类...原创 2018-09-29 11:12:10 · 213 阅读 · 0 评论 -
Java的基本数据类型之间的转换以及面试题
一、Java的基本数据类型有八种。八种又分为三类 字符类型char,布尔类型boolean数值类型byte、short、int、long、float、double。数值类型又可以分为整数类型byte、short、int、long浮点数类型float、double 二、Java基本数据类型之间的转换 Java 语言是一种强类型的语言。强类型的语言有以下几个...转载 2018-09-28 16:00:11 · 352 阅读 · 0 评论 -
Java中的类和对象
对象:万物皆对象,只要是客观存在的实体都可以理解为对象。面向对象:通过类构造出对象来解决实际问题的过程。类:类是一个模板,确定对象将会拥有的特征跟行为,类是对象的类型,是具有相同属性跟方法的一组对象的集合。类在客观世界里是不存在的只是用来描述我们的对象信息。对象的属性;是指对象所具有的的特征,例如手机的屏幕尺寸是5.0寸的,双核CPU;方法:对象所执行的行为叫做方法...原创 2018-09-28 15:49:49 · 200 阅读 · 0 评论 -
JAVA的四大组成部分
1、Java编程语言2、Java文件格式3、Java虚拟机(JVM)4、Java应用程序接口(Java API)原创 2018-09-28 11:00:29 · 3901 阅读 · 0 评论 -
简单梳理Java程序的执行流程
Java程序的执行流程,1.源文件(.Java)→2.经过编译器编译成字节码文件(.class)→3.经过解释器编译→4.虚拟机加载运行1.源文件:用文本或者其他工具编写的.Java文件2.编译器编译:JVM中的编译器会编译.Java文件成字节码文件(.class),编译之后的字节码文件通过JVM的解释器将最终结果呈现在电脑上。3.JVM通过解释器加载.class文件4.显示运行结...原创 2018-09-28 10:48:46 · 921 阅读 · 0 评论 -
面向对象的三大特征
面向对象的三大特征,封装,继承,多态。 封装:通常认为封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口。封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。继承:继承是指子类继承父类,也可以理解为是子类对父类的扩展。通过继承创建的新类称为“子类”或“派生类”。被继承的类称为...原创 2018-09-27 19:50:38 · 634 阅读 · 0 评论 -
抽象类(abstract class)和接口(interface)有什么异同?
抽象类:抽象类是用来捕捉子类的通用特性的 。它不能被实例化。接口:接口是抽象方法的集合。如果一个类实现了某个接口,那么它就继承了这个接口的抽象方法。 异同点:1、默认的方法实现:抽象类可以有默认的方法实现,接口完全是抽象的。它根本不存在方法的实现。2、实现抽象类子类使用extends关键字来继承抽象类。如果子类不是抽象类的话,它需要提供抽象类中所有声明的方法的实...原创 2018-09-27 19:31:34 · 765 阅读 · 0 评论 -
Java方法重载跟重写的区别
1.重载的定义:方法重载是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。体现了面向对象的多态性。重载的原则:1、方法名一定要相同。2、方法的参数一定要不同,包括参数的类型以及个数。3、方法的个数相同时类型要不同,类型相同时个数要不同。4、方法的返回类型跟修饰符可以相同也可以不相投。2.方法重写的定义:子类继承父类的方法之后,在子类中...原创 2018-09-27 11:09:03 · 349 阅读 · 0 评论 -
java中常用的String方法
1 length()字符串的长度String a = "Hello Word!";System.out.println(a.length);输出的结果是字符串长度10。 2 charAt()截取一个字符String a = "Hello Word";System.out.println(a.charAt(1));输出的结果是字符串a的下标为1的字符e。 3 getchars()截取多个字符并由...转载 2018-06-10 17:38:43 · 349 阅读 · 1 评论 -
Java常量池理解与总结
什么是常量用final修饰的成员变量表示常量,值一旦给定就无法改变!final修饰的变量有三种:静态变量、实例变量和局部变量,分别表示三种类型的常量。Class文件中的常量池在Class文件结构中,最头的4个字节用于存储魔数Magic Number,用于确定一个文件是否能被JVM接受,再接着4个字节用于存储版本号,前2个字节存储次版本号,后2个存储主版本号,再接着是用于存放常量的常量池,由于常量的...转载 2018-06-17 16:48:46 · 206 阅读 · 0 评论 -
两种生成线程的方式
线程是一种可以充分利用cpu资源的技术,在我们日常开发中经常使用,要创建一个线程有两种方式,下面我们来看看,这两种创建方法。第一种:继承Threadpublic class Theardtest extends Thread { public void run() { System.out.println("hello"); } public static voi...原创 2018-12-03 17:32:45 · 610 阅读 · 0 评论