
java
朝 花 拾 夕
这个作者很懒,什么都没留下…
展开
-
Java线程池是如何保证核心线程不被销毁的
对于Java中 Thread 对象,同一个线程对象调用 start 方法后,会在执行完run 后走向终止(TERMINATED)状态,也就是说一个线程对象是不可以通过多次调用 start 方法重复执行 run 方法内容的。详情可通过该链接了解:Java同一个线程对象能否多次调用start方法问题:那 Java 线程池中是如何保证核心线程不会终止的呢?接下来将通过源码分析线程池是如何保...原创 2020-04-02 00:44:04 · 14467 阅读 · 15 评论 -
Java同一个线程对象能否多次调用start方法
同一个线程对象能否多次调用start方法,搞清楚这个问题,首先需要了解线程的生命周期一、线程生命周期更多线程状态细节描述可查看Thread内部枚举类:State从上图线程状态转换图可以看出:新建(NEW)状态是无法通过其他状态转换而来的;终止(TERMINATED)状态无法转为其他状态。为何新建状态和终止状态不可逆转,接下来将通过Thread源码来分析二、先通过一个正常程序...原创 2020-03-31 22:24:12 · 8127 阅读 · 4 评论 -
java中的抽象类和抽象方法
一、 抽象类和抽象方法1、 什么是抽象类?• 由abstract修饰的类就是抽象类。2、什么是抽象方法?• 如果一个类中的方法,只有方法的定义而没有具体的方法实现,则称该方法为抽象方法。也就是说抽象方法没有方法体。即:没有{}。接下来看一个例子package com.jcxy.demo04;/** * * abstract修饰的类是抽象类 * * @au原创 2015-12-06 21:19:01 · 724 阅读 · 0 评论 -
java中的变量(成员变量、本地变量、类变量)
Java中的变量:1、成员变量(实例变量,属性)2、本地变量(局部变量)3、类变量(静态属性)一、成员变量(实例变量,属性)1.1-成员变量:(在类中定义,访问修饰符修饰符typename=value)1.2-什么是成员变量?成员变量就是类中的属性。当new对象的时候,每个对象都有一份属性。一个对象中的属性就是成员变量。原创 2015-12-05 22:08:29 · 24131 阅读 · 2 评论 -
java中的接口
一、接口就是一组规范,标准。接口是一组对类功能需求的统一描述。这些类要遵守接口中规定的功能需求。接口可以看作是特殊的抽象类。二、 接口如何定义: public interface 接口名[与类名命名规则相同] { //public static final 修饰的常量----常量 //public abstract修饰的方法--------抽象方法原创 2015-12-07 19:15:30 · 446 阅读 · 0 评论 -
java中抽象类与接口的异同
接口和抽象类• 接口和抽象类的异同1、 接口和抽象类相似,它们都具有如下特征• 接口和抽象类都不能被实例化。只能被其他类实现和继承。• 接口和抽象类都可以包含抽象方法,实现接口和抽象类的类都必须实现这些抽象方法2、接口和抽象类有如下不同 • 抽象类与接口定义不同:抽象类abstract class ,接口 interface• 接口里只能包含抽象方法,原创 2015-12-07 20:50:41 · 1221 阅读 · 0 评论 -
java中的包装类及与String之间的互相转换
包装类一、在Java中,8中基本数据类型,并不符合面向对象的编程机制。他们不属于Object的类层次结构(8中基本数据类型没有父类)。也就是说8种基本数据类型,没有属性和方法。为了让基本数据类型也能像其他引用类型一样,具备面向对象的特性,所以,为8种基本数据类型定义了包装类。– 基本数据类型与对应的包装类byte Byteshort Shortint Integer原创 2015-12-08 21:36:14 · 2305 阅读 · 0 评论 -
java中的IO流之字节流详解(二)
学习IO流首先要了解IO流的体系架构IO流分类•IO流的分类:IO流相对于JVM来说,根据传输方向划分为•输入流•输出流IO流根据流的传输数据类型•字节流(按字节传输)•字符流(按字符传输)IO流体系结构,均基于四个顶层的抽象类字节流• InputStream:表示所有字节输入流的父类。InputStream的子类,写法都是XxxInputS原创 2016-09-08 11:06:34 · 977 阅读 · 1 评论 -
ubuntu16.04搭建jdk1.8运行环境
搭建环境:Ubuntu 16.04×64JDK :jdk-8u171-linux-x64.tar.gz首先下载linux对应的安装包下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html(随着jdk更新,版本会有变化)下载完成后,Linux默认下载位置在...原创 2018-04-24 00:01:46 · 105032 阅读 · 25 评论 -
java中对字符串的基本操作
1、统计该字符串中某字母出现的次数。2、取出子字符串"new"。3、将字符串中每个单词的第一个字母变成大写, 输出到控制台。4、用多种方式实现该字符串的倒叙输出。for example:“welcome to my new homepage”1、只需要将字符串变为数字并对数组进行遍历,利用一个int型变量记录该字母出现的次数。public static int c原创 2015-10-01 13:17:54 · 923 阅读 · 0 评论 -
java中的基本排序之冒泡排序和选择排序
1、冒泡排序:相邻的两个元素进行比较,如果符合条件就换位。需求:对指定的数组进行排序功能:通过排序形成一个从小到大的排序结构返回类型为void原理:第一圈:最值出现在最右端。class BubbleSort{ public static void main (String[] args) { int[] array = {9,7,3,12,6,21,5,47,32,19,8原创 2015-10-01 22:37:24 · 586 阅读 · 0 评论 -
java中类的加载机制
一、类加载的时机:了解第一次使用类的信息时,类才被加载到JVM。一般情况下,类加载遵循:延迟加载,能不加载就不加载。类加载的几种情况:• 1、调用静态方法时,会加载静态方法所在的类。如果通过子类调用父类的静态方法时,只会加载父类,不会加载子类。如果子类重写了父类的静态的方法,子类调用该方法,则先加载父类,再加载子类。• 2、加载子类时,肯定会加载父类。• 3、调用静态属性时,会原创 2015-12-06 21:08:37 · 553 阅读 · 0 评论 -
java中的集合之Collection(一)
集合一、常见数据结构1、线性表• 顺序线性表- 数组(一块连续的内存空间):查询快,增删慢• 链式线性表:查询慢,增删快2、单向链表3、双向链表4、 栈:LIFO=last in first out (先进后出或者后进先出)5、 队列:FIFO=first in first out(先进先出) 二、什么是集合? 就是一组存放对象的容器。当需要对多个对象原创 2015-12-11 20:46:50 · 526 阅读 · 0 评论 -
java中的集合之List(二)
List接口List接口是Collection接口的子接口,该List接口中的元素,是有序的,可重复的,可允许多个为null。且可以通过索引对List接口中的元素进行访问。– List除了继承Collection中的方法,自己新增了与索引相关的方法。– List特有的方法listIterator()方法。• 在迭代过程中,不能使用迭代对象和集合对象同时操作集合中的元素。否则会报Co原创 2015-12-12 21:29:05 · 578 阅读 · 0 评论 -
java中的集合之Set接口(三)
Set接口 没有扩展自己的方法,与Collection中的方法完全一致。– HashSet• 此类实现 Set 接口,由哈希表(实际上是一个HashMap 实例)支持。它不保证set 的迭代顺序;特别是它不保证该顺序恒久不变。此类允许使用 null 元素。• 此实现不是同步的,想实现同步,需要使用Set s = Collections.synchronizedSet(new原创 2015-12-13 14:42:46 · 888 阅读 · 0 评论 -
java中的集合之Map接口(四)
Map接口1.将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。 2.此接口取代 Dictionary 类,后者完全是一个抽象类,而不是一个接口。3.表示集合,与Collection体系无关,Map存放的是key-value的键值对。4.在Map中,key不能重复,所以key的集合为Set;value的值可以重复,所以value的集合可以看做Collec原创 2015-12-14 20:55:53 · 658 阅读 · 0 评论 -
java中日期类(Calendar)
日期类1、Date• 从 JDK 1.1 开始,应该使用Calendar 类实现日期和时间字段之间转换,使用DateFormat 类来格式化和解析日期字符串。Date 中的相应方法已废弃。 2、DateFormat(抽象类)->子类SimpleDateFormat• 它允许进行格式化(日期 -> 文本)、解析(文本 -> 日期)和规范化。 • Date->String, St原创 2015-12-08 23:06:19 · 1954 阅读 · 1 评论 -
java中的object类
• Object类1、位于java.lang包中。2、类 Object 是类层次结构的根类,每个类都使用 Object 作为超类,所有对象(包括数组)都实现这个类的方法。3、 因为Object是所有类的直接或间接父类,所以,Object中的所有方法,其子类都拥有。3.1. toString()当直接打印对象时,默认输出的是该对象的toString方法的返回值。默认输出的对象原创 2015-12-04 22:33:22 · 841 阅读 · 0 评论 -
java中的IO流之File类(一)
File类File类表示文件或目录在JVM中的一种抽象形式。File类对文件或目录进行了封装,提供对文件或目录的操作方法,可以方便编程时使用。注意:•创建File对象,File可以表示文件或目录。•不同的OS中,路径的分隔符也不相同。windows中,路径分隔符可以使用/或\\;Linux或unix中,路径分隔符使用/;File类提供了一个静态的路径分隔符的属性,该属性根据原创 2015-12-20 21:32:34 · 603 阅读 · 0 评论 -
java中static关键字用法
static关键字一、用法1、static关键字表示静态。能与属性,方法,代码块,内部类等一起使用。2、static修饰属性和方法时,可以直接通过类名.属性或类名.方法来访问。3、 静态变量:• 一个类中,静态的变量只分配一块内存空间。多个实例对象共享该内存空间。• 静态的变量在类加载的时候,被初始化。也就是说,只要类被加载,不管是否使用该静态变量,则都会自动的为其开辟空间原创 2015-12-05 20:29:52 · 1059 阅读 · 0 评论 -
java中的异常处理
异常一、什么是异常(Exception)Java程序在编译或运行时发生的错误,叫做异常。 二、为什么进行异常处理程序一旦发生异常,会中断指令正常的运行。为了保证程序在发生异常时,能够继续向下执行。所以,引入了异常处理机制。 三、异常的类型JVM异常Java标准异常类:JDK提供的异常类。自定义异常 四、异常的层次结构1、Throwable类:Th原创 2015-12-10 21:40:22 · 645 阅读 · 0 评论