java编程思想
chun_soft
再忙也不要忘记学习!
展开
-
java项目中常量规范定义的思考
大言不惭,则无必为之志。——《论语·宪问》1、引言最近在看老大在项目中写的代码,发现在系统常量的定义上,与我之前在开发项目的定义有些不一样,引发了我对系统变量如何规范定义和每一种定义有什么优点?这两个问题的好奇。为什么需要定义常量? 提取常量主要是为了避免魔法数字和提高代码可读性保证一致性。首先我想研究下,有哪几种定义常量的方法,经过谷歌,主要有两种:(1)在接口中...原创 2018-09-02 23:38:31 · 4637 阅读 · 2 评论 -
java中volatile、synchronized和lock解析
1、概述在研究并发程序时,我们需要了解java中关键字volatile和synchronized关键字的使用以及lock类的用法。首先,了解下java的内存模型:(1)每个线程都有自己的本地内存空间(java栈中的帧)。线程执行时,先把变量从内存读到线程自己的本地内存空间,然后对变量进行操作。 (2)对该变量操作完成后,在某个时间再把变量刷新回主内存。那么我们再了解下锁提供的两种特性:互斥(mut原创 2017-03-07 21:10:34 · 10698 阅读 · 7 评论 -
java线程池解析和四种线程池的使用
1、概述 线程池,是指管理一组同构工作线程的资源池。线程池是与工作队列(Work Queue)密切相关的,其中在工作队列中保存了所有等待的任务。工作者线程(Worker Thread)的任务很简单:从工作队列中获取一个任务,执行任务,然后返回线程池,并等待下一个任务。“在线程池中执行任务” 比“为每个任务分配一个线程”优势更多。通过重用现有的线程而不是创建新线程,可以在处理多个请求时分摊在线程原创 2017-02-26 15:53:56 · 1913 阅读 · 0 评论 -
java中的四种引用类型
1、概述 从JDK1.2版本开始,java把对象引用分为四种级别,从而使程序能更加灵活地控制对象的生命周期。这四种级别根据引用强度由高到低依次为,强引用(StrongReference)、软引用(SoftReference)、弱引用(WeakReference)和虚引用(PhantomReference)。2、强引用(StrongReference) 强引用是使用的最普遍的引用类型。如果一原创 2017-02-25 00:23:59 · 682 阅读 · 0 评论 -
java反射机制和自定义注解原理分析和实例
1、概述熟悉android开发的都会了解到Android的xUtils框架的ViewUtils模块,简化了findViewById的编写,通过完全注解方式就可以进行UI,资源和事件绑定。实现基本原理就是通过java中的注解和反射实现,本文主要介绍java中的反射机制和自定义注解的原理和实例编写。2、反射机制 定义:反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意原创 2017-03-02 22:36:15 · 1766 阅读 · 0 评论 -
java抽象类和接口的区别
1、抽象类(abstract class) 定义:如果一个类含有抽象方法,则称这个类为抽象类,抽象类必须在类前用abstract关键字修饰。抽象方法:只有声明,而没有具体实现。抽象方法的声明格式为:abstract void fun();特点: (1)抽象方法必须为public或者protected(因为如果为private,则不能被子类继承,子类便无法实现该方法),缺省情况下默认为publ原创 2017-02-12 19:49:49 · 410 阅读 · 0 评论 -
JAVA关键字static、final总结
1.staticstatic表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。 被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。只要这个类被加载,Java虚拟机就能根据类名在运行时数据区的方法区内定找到他们。因此,static对象可以在它的任何对象创建之前原创 2016-10-24 23:21:29 · 452 阅读 · 0 评论 -
java抽象类与接口对比分析
1.抽象类(abstract class)2.接口(interface)3.区别原创 2016-11-05 00:48:30 · 441 阅读 · 0 评论 -
JAVA三大特性—封装、继承、多态
1.封装定义: 封装也称信息隐藏,指利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体,数据被保存在抽象数据类型内部,尽可能的隐藏内部的细节,只保留一些对外接口,使之与外部发生联系。优点: (1)实现专业分工:将能实现某一功能的特定代码封装成一个独立的实体后,程序员可以在需要的时候调用,从而实现专业分工。 (2)实现信息隐藏,控制访问权限。2.继承定义:原创 2016-10-24 22:54:49 · 577 阅读 · 0 评论