自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (1)
  • 收藏
  • 关注

原创 Java线程的同步synchronizated

对象锁临界区是指程序中的一个代码段,在这段代码中,单独并发的线程对同一个对象进行访问。在Java中,用关键字“synchronized”标识一个临界区。对象锁是指Java为临界区synchronized(Object)语句指定的对象进行加锁,对象锁是独占排他锁。 对象锁用于程序片段或者method上,此时将获得对象的锁,所有想要进入该对象的synchronized的方法或者代码段的线程都必须获取对

2016-11-19 17:19:54 889

原创 Java 线程的状态与一些方法

线程状态下面的这个图非常重要!你如果看懂了这个图,那么对于多线程的理解将会更加深刻! 1、新建状态(New):新创建了一个线程对象。 2、就绪状态(Runnable):线程对象创建后,其他线程调用了该对象的start()方法。该状态的线程位于可运行线程池中,变得可运行,等待获取CPU的使用权。 3、运行状态(Running):就绪状态的线程获取了CPU,执行程序代码。 4、阻塞状态(Bl

2016-11-19 15:31:40 531

原创 Java 继承Thread和实现Runnable实现多线程的区别

继承Thread实现多线程package dd20161117;public class OtherThread extends Thread { private int tickets = 20; private boolean isGo = true; public void run() { while (isGo) { if (tic

2016-11-19 14:25:38 574

原创 Java多线程

Java 的“多线程”,它可以让不同的程序块一起运行,如此一来可让程序运行更为顺畅,同时也可达到多任务处理的目的进程与线程什么是进程进程是程序的一次动态执行过程,它经历了从代码加载、执行到执行完毕的一个完整过程,这个过程也是进程本身从产生、发展到最终消亡的过程。每个运行中的程序就是一个进程,这一点在任务管理器上面可以形象的看到。什么是线程线程是比进程更小的执行单位,线程是进程内部单一的一个顺序控制流

2016-11-19 14:09:48 310

原创 Java 访问权限修饰符合打包的jar包

在 JAVA 中有四种访问控制权限,分别为: private、 default、 protected、 public。private在前面已经介绍了 private 访问控制符的作用,如果一个成员方法或成员变量名前使用了 private 访问控制符,那么这个成员只能在这个类的内部使用。 注意:不能在方法体内声明的变量前加 private 修饰符。default如果一个成员方法或成员变量名前没有使用

2016-11-19 13:29:28 678

原创 Java 异常类及异常处理简单概念

异常也称为例外,是在程序运行过程中发生的、会打断程序正常执行的事件,下面是几种常见的异常: 1. 算术异常( ArithmeticException)。 2. 没有给对象开辟内存空间时会出现空指针异常( NullPointerException)。 3. 找不到文件异常( FileNotFoundException)。 当异常发生时,通常可以用两种方法来处理,一种是交由 Java 默认

2016-11-19 13:13:49 2606

原创 Java匿名内部类

在Java中抽象类和接口都是无法直接实例化的,他的实例化必须要通过子类的向上转型得到子类引用。比如下面的例子。通过子类的情况abstract class Person { public abstract void eat();}class Child extends Person { public void eat() { System.out.println("e

2016-11-19 12:05:08 274

原创 Java instanceof关键字

可以用 instanceof 判断一个类是否实现了某个接口,也可以用它来判断一个实例对象是否属于一个类。instanceof 的语法格式为: 对象 instanceof 类(或接口) 它的返回值是布尔型的,或真(true)、或假(false)instanceof使用的好处上一篇文章中介绍了多态,在进行对象类型转换之前先使用instanceof进行判断可以避免因程序错误导致的崩溃情况。packag

2016-11-19 11:23:15 317

原创 Java 多态的好处

什么是多态面向对象的三大特性:封装、继承、多态。从一定角度来看,封装和继承几乎都是为多态而准备的。这是我们最后一个概念,也是最重要的知识点。多态的定义:指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用)实现多态的技术称为:动态绑定(dynamic binding),是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用

2016-11-19 10:58:20 12603 13

原创 Java 接口

可以说接口是对抽象类的补充,在Java机制里只允许单继承,如果这个父类中的方法不能完全满足子类,子类没办法再去继承其它的父类,但是可以通过实现接口来弥补这些。 1、 接口里的数据成员必须初始化,且数据成员均为常量。 2、 接口里的方法必须全部声明为 abstract,也就是说,接口不能像抽象类一样保有一般的方法,而必须全部是“抽象方法”。定义格式: interface 接口名称 // 定义抽象

2016-11-12 17:43:34 274

原创 Java final关键字

在 Java 中声明类、属性和方法时,可使用关键字 final 来修饰。 1、 final 标记的类不能被继承。 2、 final 标记的方法不能被子类复写。 3、 final 标记的变量(成员变量或局部变量)即为常量,只能赋值一次。

2016-11-12 17:23:46 254

原创 java Object类

Java 中有一个比较特殊的类,就是 Object 类,它是所有类的父类,如果一个类没 有使用 extends 关键字明确标识继承另外一个类,那么这个类就默认继承 Object 类。 因此, Object 类是 Java 类层中的最高层类,是所有类的超类。换句话说, Java 中任何 一个类都是它的子类。由于所有的类都是由 Object 类衍生出来的,所以 Oject 类中的 方法适用于所有

2016-11-12 17:22:30 268

原创 Java 抽象类

抽象类定义规则 · 抽象类和抽象方法都必须用 abstract 关键字来修饰。 · 抽象类不能被实例化,也就是不能用 new 关键字去产生对象。 · 抽象方法只需声明,而不需实现。 · 含有抽象方法的类必须被声明为抽象类,抽象类的子类必须复写所有的 抽象方法后才能被实例化,否则这个子类还是个抽象类。 格式 abstract class 类名称 // 定义抽象类 { 声明数据成员 ;

2016-11-12 16:42:55 269

原创 Java 内部类

在一个类的主体块中定义的类,这个类和正常的类没什么区别。 标识符 class 外部类的名称 { // 外部类的成员 标识符 class 内部类的名称 外部类 { // 内部类的成员 内部类 } } 外部类是无法找到内部类中所声明的属性。而内部类则可以访问外部类的属性,这时的内部类只是外部类的一个成员,全局不可以访问局部的属性。定义在方法中的类在方法中定义的内部类只能访问方法中的 f

2016-11-12 16:28:13 319

原创 Java static关键字

用static修饰的变量和方法存储在静态区,和类同级,在调用的时候可以不通过实例化的对象,也可以通过对象。public class Person{ static int age; public static void eat(){ System.out.println("吃饭时间到"); }}public class PersonTest{ //通过类直接

2016-11-12 15:46:51 265

原创 Java继承

继承父类所有的属性和方法子类在实例化的过程中必须要调用父类中的构造方法public class Student extends AbstractPerson{ public Student(int age) { //父类的构造方法 super(age); //父类中的属性 super.age=1; // TODO

2016-11-12 15:21:18 191

原创 Java中this和super关键字的区别

this强调的是对象的本身,通过this调用的属性和方法都是它所属于的那个类中的属性和方法。属于对象和类间的关系 super在子类中调用父类的方法和属性。属于子类和父类两个类间的关系//父类public abstract class AbstractPerson { int age; public AbstractPerson(int age) { //调用本类中

2016-11-12 14:52:07 1133

原创 Java 匿名对象和对象就是一个能否不断得到实例化对象内存引用的区别

对象的声明与实例化过程类名 对象名 = new 类名() ;Person p ; // 先声明一个 Person 类的对象 pp = new Person() ; // 用 new 关键字实例化 Person 的对象 p** 这里分别做了两件事: 1、 声明指向”由类所创建的对象”的变量 2、 利用 new 创建新的对象,并指派给先前所创建的变量。** 从图片中可以看出,当我们声明对象

2016-11-12 14:32:51 1372 1

原创 Java类与对象

Java类与对象面向对象的编程思想力图使在计算机语言中对事物的描述与现实世界中该事物 的本来面目尽可能地一致,类( class)和对象( object)就是面向对象方法的核心概念。 类是对某一类事物的描述,是抽象的、概念上的定义;对象是实际存在的该类事物的 个体,因而也称实例( Instance)。 比如:美女是类,范冰冰就是对象。狗是类,你家里的小狗就是对象。类在使用类之前,必须先定义它,

2016-11-05 17:35:47 539

原创 Java面向对象程序设计的基本概念

Java面向对象程序设计的基本概念早期的程序设计经历了“面向问题”、“面向过程”的阶段,随着计算机技术的发展,以及所要解决问题的复杂性的提高,以往的程序设计方法已经不能适应这种发展的需求。于是,从 20 世纪 70 年代开始,相继出现了多种面向对象的程序设计语言,并逐渐产生了面向对象的程序设计方法。面向对象的程序设计涉及到对象、封装、类、继承及多态等几个基本概念。对象对象的特征分为静态特征和动态特征

2016-11-05 16:52:12 707

原创 Java程序中的方法

Java程序中的方法方法的好处用方法来编写程序代码有相当多的好处,它可简化程序代码、精简重复的程序流程,并把具有特定功能的程序代码独立出来,使程序的维护成本降低。方法的声明返回值类型 方法名称(类型 参数 1,类型 参数 2, …) { 程序语句 ; return 表达式; } 大括号内为方法的主体部分 要特别注意的是,如果不需要传递参数到方法中,只要将括号写出,不必填入任何内容。此外,

2016-11-05 15:23:56 310

原创 Java二维数组

Java二维数组二维数组的声明与分配内存数据类型 数组名[][] ; 数组名 = new 数据类型[行的个数][列的个数] ;int score[][];// 声明整型数组 scorescore = new int[4][3];//配置一块内存空间,供4行3列的整型数组 score 使用和之前的一维数组一样,想给数组分配内存就必须得知道元素的个数,二维数组是通过行数和列数来确定元素个数的二维数组

2016-11-05 14:43:31 456

原创 Java一维数组

Java一维数组数组的声明与内存分配:数据类型 数组名[ ] ; // 声明一维数组 数组名 = new 数据类型[个数] ; // 分配内存给数组int score[] ; // 声明整型数组 scorescore = new int[3]; // 为整型数组 score 分配内存空间,其元素个数为 3我们在声明变量之后,内存就分配好了,是因为变量的个数已经确定。当我们声明数组的时候,元素个数

2016-11-05 14:17:15 273

原创 Java程序的结构设计

Java程序的结构设计顺序结构。选择结构。循环结构。 Java程序整体是顺序结构,在循序结构中存在着选择与循环结构。顺序结构一条一条语句的执行下去,直到程序末尾。选择结构这种结构是依据判断条件的结果,来决定要执行的语句。如:if语句等。if语句if (判断条件) { 语句 1 ; 语句 2 ; … 语句 3 ; }if…else语句if (判断条件) { 语句主体 1 ;

2016-11-05 14:01:15 369

原创 Java中char 字符类型的独特性

Java中char 字符类型的独特性char的两种赋值方式char c=97; char c1=’a’; 之所以会这样是因为字符类型在内存中占有 2 个字节,可以用来保存英文字母等字符。计算机处理字符类型时,是把这些字符当成不同的整数来看待,因此,严格说来,字符类型也算是整数类型的一种。

2016-11-05 13:35:50 677

原创 java变量与数据类型

java变量与数据类型变量与常量变量的声明数据类型 变量名称;如:int num; 在我们声明变量之后,程序会根据变量类型来给这个变量分配相应的内存。变量的赋值变量名 = 常量 ; 如:num=3; 由此可见,我们直接写出的数据都是常量,变量的值都是把常量赋值给变量的结果。数据类型 在Java程序中常量的整型如3等,默认的数据类型为int,而常量浮点型如3.0,默认数据类型为double数据

2016-11-05 13:31:43 340

原创 java基础程序设计

java基础程序设计环境变量的配置JAVA_HOME: ” D:\java\jdk1.8.0”CLASSPATH:” .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar “PATH :在原有初始值最后加上:”%JAVA_HOME%\bin;jdk和jre的关系:re(java runtime environment),就是java程序的运行环境。你所写的java

2016-11-05 13:08:28 317

Kotlin(中文版)学习pdf版

Kotlin学习手册中文版,文件格式为pdf版

2017-05-26

空空如也

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

TA关注的人

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