Java初级
wangyj1992
写博客也是一种严谨的治学精神
展开
-
一段java代码加载分析认识加载过程
java代码加载过程基础:不含继承:静态代码=》非静态代码=》构造函数含继承:父类静态代码=》子类静态代码=》父类非静态代码=》父类构造函数=》子类非静态代码=》子类构造函数 static修饰的代码块或者变量:1、只分配一块内存,一个class共享一块内存。2、静态变量声明在初始化前完成,并赋值0。3、静态变量或者静态代码块在类加载的时候就开始执行。然后执行完stati...原创 2017-01-18 21:41:11 · 393 阅读 · 1 评论 -
Spring的事务处理
主要讲事务的基本概念和处理方法前面Spring提供的AOP就是实现了事务处理。(一)事务的概念定义:事务就是一连串步骤依次执行的过程,这些步骤都是同时成功和同时失败的。事务处理有两个关键概念:提交(Commit)和回滚(Rollback)提交就是在一个事务内部全部执行成功了,就可以提交。回滚就是在一个事务内部只要有一个步骤失败了,那这个事务回滚,所有已经执行和未经执行的步骤...原创 2017-04-09 15:51:30 · 730 阅读 · 0 评论 -
JDBC的使用
JDBC:Java数据库连接,提供了一种与平台无关的用于执行SQL语句的标准javaAPI,可以方便实现多种关系型数据库的统一操作。 一段JDBC访问数据库的代码: package com.gc.acion;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedSta...原创 2017-04-08 16:49:09 · 284 阅读 · 0 评论 -
Spring的AOP
Spring的AOP,先来了解下英文翻译:Aspect Oriented Programming。中文翻译即为面向切面编程。Java是面向对象编程,即处理的时候是根据对象进行处理。AOP是面向切面编程,即处理的时候是相当于一个横切面,部分符合条件的程序都需要经过这个横切面进行处理。面向对象和面向切面编程是相辅相成的。 先来介绍一下面向切面编程AOP的三个关键概念:Pointcu...原创 2017-04-06 21:57:56 · 387 阅读 · 0 评论 -
Java动态代理详解
代理是一种设计模式,JDK的代理设计模式应用有Java动态代理。动态代理是一种思想,委托类的方法实现通过代理类来完成。代理类和委托类实现同一个接口,即让他们实现相同的方法(因为代理类是为委托类服务的,所以必须实现委托类的方法,然后再可以在委托类前后新增加一些方法)代理设计模式有三种角色:委托类接口,委托类实现,代理类 以上模型,代码实现:定义接口 package ...原创 2017-04-01 09:20:33 · 315 阅读 · 0 评论 -
Spring的核心容器Bean的基础知识(三)
(一)集合注入的方式:集合注入有几种:List、Set、Map、Properties几种集合的注入方式均为:先把注入的信息注入到集合中去,再把集合的信息注入到bean中。如下:相当于在配置文件中把集合初始化了。bean.class package com.gc.acion;import java.util.Date;import java.util.List;i...原创 2017-03-15 21:08:12 · 278 阅读 · 0 评论 -
Spring的核心容器Bean的基础知识(二)
这篇来介绍一下Bean基础中的依赖相关。Bean元素的depends-on属性,depends-on哪个bean。(一)Java Bean 之间的依赖关系:可以通过<ref/>元素来手动指定Bean的依赖关系。即同ref表示指定依赖。Bean的依赖关系可以改变Bean的实例化顺序,被依赖的Bean要先于依赖的Bean优先被实例化。<ref/>的三种模式和用法...原创 2017-03-15 14:17:48 · 276 阅读 · 0 评论 -
Spring的核心容器Bean的基础知识(一)
Spring Bean无侵入架构模式关于Spring Bean的两个关键的包:spring-beans-4.3.7.RELEASE.jarspring-context-4.3.7.RELEASE.jar这两个包里最重要的是两个class,BeanFactory和ApplicationContext (一)Bean的基础知识id 和class见配置文件(set注入方式...原创 2017-03-12 20:41:08 · 499 阅读 · 0 评论 -
Spring依赖注入的三种实现方式
依赖注入定义:组件依赖于抽象,当组件要与具体实现类产生依赖,则通过抽象注入实际对象。组件和具体实现类的关系由抽象进行中转。XXX 注入 XXX注入具体实现类通过抽象注入具体实现类。 依赖注入的三种方式:1、接口注入:一般定义一个接口,逻辑类实现该接口和该接口定义的方法, 在必须实现的方法中通过抽象类注入具体实现类。2、set注入:通过set方法,set某一个具体实...原创 2017-03-12 19:29:11 · 2119 阅读 · 0 评论 -
Spring框架学习(一)
Spring框架的 学习先列个大纲:第一部分:1、Spring简介2、建立Spring环境第二部分:1、IOC/DI2、Spring的核心容器Bean3、AOP4、Spring对事物的处理5、持久层封装6、web框架,MVC7、定时器第三部分:与其他工具的结合1、Spring+Struts2、Spring+Hibernate3、Sprin...原创 2017-03-09 21:45:24 · 286 阅读 · 0 评论 -
java中==与equals及Random随机数
1、基本类型的赋值与对象的赋值基本类型的赋值就是将内容赋值;对象赋值是给它的引用赋值。一个对象=引用+内容(属性和方法)。 2、==比较的是引用,equals比较的是对象。在Object(java.lang)中,equals比较的是引用,但是在一些Integer等类里面,重写了equals方法,使之比较的是对象中的内容。所以有个注意的地方,在自己定义一个类的时候可以根据需要重写...原创 2017-01-22 23:09:53 · 344 阅读 · 0 评论 -
&和&&,|和||
非短路与:&短路与:&& 非短路或:|短路或:|| 短路与非短路的区别在于:是否判断到符合条件了继续判断。短路的判断到符合条件了就不往判断了;非短路的需要将所有的条件都判断一下。 0&&*:false1||*:true...原创 2017-01-24 14:22:23 · 183 阅读 · 0 评论 -
return,break和continue
1、return:不执行下面的程序2、break:跳出本层循环3、continue:跳出本次循环原创 2017-01-24 14:57:55 · 173 阅读 · 0 评论 -
java多线程基础篇(部分转载)
多线程:一个多线程的实现可以继承Thread类,也可以实现Runnalble接口实现。其实Thread类是实现Runnanble接口来的。Runnable接口只定义了一个抽象方法run(); public interface Runnable{ public abstract void run();}1、继承Thread类建一个线程,重写run方法: ...原创 2017-02-02 20:51:24 · 265 阅读 · 1 评论 -
File类
File类代表的是一个文件类型或者文件夹类型File file = new File(String s);新建一个File对象,可以对该File对象进行读写。把文件封装成一个对象,在java中文件就是一个对象,可以进行读/写操作。 读取D:/test3.ttx的内容,写到D:/writerFile.txt,如果test3.txt不存在,则报错java.io.FileNotFou...原创 2017-02-01 22:30:01 · 286 阅读 · 1 评论 -
java的IO系统中的流
流:字节流和字符流。字节流只读取一个字节一个字节的读取。字符流是一个字符一个字符的读取。字节流可以处理各种格式数据,字符流只能处理文本格式的数据,一般对于文本格式来说可优先使用字符流。 常用流:FileReader和FileWiter(继承于InputSteamReader和OutputSteamWriter)常用方法:int read();读取不到则返回-1;i...原创 2017-02-01 12:44:57 · 281 阅读 · 1 评论 -
认识内部类
1、内部类的编译器处理虚拟机对于内部类是没有办法识别的,其区分是在编译器阶段。编译器会把一个包含内部类的外部类编译两个class,在虚拟机处理的时候处理这两个class。内部类有两个特性:1、外部类可以创建一个内部类对象, 即使是private的class。因为编译器在编译的时候,内部类的class里面会生成一个包可见的构造函数,在外部类创建内部类的时候就是调用的这个包可见的构造函...原创 2017-01-31 19:51:01 · 277 阅读 · 1 评论 -
java的三大特性之一(封装)
封装:将自己想隐藏的方法或属性隐藏,想提供别人调用的方法或属性开放。通过权限访问控制来控制:public、proteced、default、private public class Student { //私有属性 private String name; private int age; //私有方法 private int StringAge(int ag...原创 2017-01-26 16:18:29 · 221 阅读 · 1 评论 -
java三大特性之一(多态)
多态:接口的多种不同实现方式。多态必须满足的三大条件:1、继承2、必须有方法的重写3、向上转型,使用父类的方法,通过动态绑定机制实现子类的方法实现,可以减少子类对父类某个方法的重复重写。 动态绑定机制:java提供一种动态绑定机制。在运行期判断对象类型,并分别调用适当的方法。 public class Shape { public void draw(){ ...原创 2017-01-26 14:27:09 · 318 阅读 · 1 评论 -
java重写与重载
重写:继承了父类的某个方法,但是需要加上子类特有的一些处理逻辑,就需要将这个父类的方法重新写一遍。方法名和参数都不变。重载:一样的方法名,传入参数类型或个数不一致。根据调用传入的参数去判断调用哪个方法。...原创 2017-01-26 14:11:19 · 226 阅读 · 1 评论 -
java的三大特性之一(继承)
代码的复用:组合和继承组合的概念:new一个对象,并且引用改对象的属性或方法,复用的是代码的功能。继承的概念:extends父类,采取现有类的形式对新类进行改造。以上两种方法都可以很好的对代码进行复用,避免代码冗余。 组合的例子: public class Test1 { private String s; Test1(){ System.out.printl...原创 2017-01-25 10:29:00 · 308 阅读 · 1 评论 -
一个模拟抛硬币的游戏
/** * 模仿抛硬币游戏 * @author wangyj1992 * */public class CoinGame { public int m = 0; //统计正面次数 public int n = 0; //统计反面次数 /** * 抛硬币 */ public void playCoin(){ for(int i=0; i<1000; i++)...原创 2017-01-25 10:25:52 · 22203 阅读 · 1 评论 -
java初始化和清除
1、构造器初始化new一个对象首先会给器分配一块内存,并且调用构造方法进行初始化。构造方法:构造方法与类型一致,且没有返回类型。每个类都有一个默认的构造方法。构造方法和普通方法一样可以重载,用于传入不同的参数。区分构造方法,只能由参数个数不同,类型不同去区分。 public class Contruct { Contruct() { //无参构造方法 System.ou...原创 2017-01-24 20:49:40 · 520 阅读 · 0 评论 -
认识一下java的开发环境
Java的开发一般需要JDK(Java Development Kit),开发集成工具(eclispe),服务器(tomcat)等。1、JDK(Java Development Kit)Java 开发软件包。包括Java的运行环境、Java工具和一些基础类库。JDK和JRE的区别:如果需要Java的开发编译和运行环境就需要下载JDK(其中JDK下载会包括JRE的下载)。如果只需要运...原创 2017-03-09 08:30:27 · 434 阅读 · 0 评论