众所周知在JAVA编程语言中有两种初始化块:静态初始化块非静态初始化块他们到底有什么区别呢?今天就浅谈一下JAVA中静态初始化块和非静态初始化块的区别静态初始化块定义: static{}执行优先级高于非静态的初始化块,它会在对象装载到系统的时候执行一次,执行完成便销毁,它仅能初始化类变量,即s...
分类:
编程语言 时间:
2015-04-22 13:49:06
阅读次数:
146
来自:http://blog.csdn.net/socoolfj/article/details/750425 http://www.cnblogs.com/miniwiki/archive/2011/03/25/1995615.html规则1(无继承情况下):对于静态变量、静态初始化块、变量、初始...
分类:
编程语言 时间:
2015-04-20 20:54:11
阅读次数:
175
一、概述 面向对象除了封装、继承和多态三大特征之外,还有其他的特性,例如abstract抽象、interface接口等,抽象类主要作为多个类的模板,而接口则定义了多类应该遵守的规范,final关键字让java实现不可变类,让系统更加安全。 二、正文1、构造器和初始化块1.1 构造器 构造器是一...
分类:
编程语言 时间:
2015-03-22 10:25:21
阅读次数:
202
首先有三个概念需要了解:一.静态初始化:是指执行静态初始化块里面的内容。二.实例初始化:是指执行实例初始化块里面的内容。三.构造方法:一个名称跟类的名称一样的方法,特殊在于不带返回值。我们先来看一段程序结果: package com; class Book{ publ...
分类:
编程语言 时间:
2015-03-16 14:19:19
阅读次数:
170
public class Person{ { System.out.println("Person初始化块"); } { if(1) { System.out.println("Person第二个初始化块"); } ...
分类:
编程语言 时间:
2015-03-05 00:01:15
阅读次数:
235
1、虚拟机在首次加载Java类时,会对静态初始化块、静态成员变量、静态方法进行一次初始化2、只有在调用new方法时才会创建类的实例3、类实例创建过程:按照父子继承关系进行初始化,首先执行父类的初始化块部分,然后是父类的构造方法;再执行本类继承的子类的初始化块,最后是子类的构造方法4、类实例销毁时候,...
分类:
编程语言 时间:
2015-02-28 21:30:50
阅读次数:
201
接口: 接口中的field一定是常量,方法只能是抽象实例方法,接口里不能有构造器和初始化块定义 类A implements 接口,在类B中可以利用定义一个接口 b=(Interface)类A,然后调用b.在类A中实现的方法,从而实现在类B中实现对类A方法的调用 其中 接口 b = (inter...
分类:
编程语言 时间:
2015-02-25 11:36:07
阅读次数:
193
Object类是所有类、数组、枚举类的父类,是类层次结构的根类。每个类都使用Object作为超类。所有对象(包括
数组)都实现这个类的方法。
Object类实现了以下方法:
我们来看看在源码中registerNatives()方法:
private static native void registerNatives();
static {...
分类:
编程语言 时间:
2015-02-21 19:57:47
阅读次数:
220
封装、继承、多态是面向对象的三大特征,继承是实现类重用的重要手段,但是继承会带来一个最大的坏处,那就是破坏封装。因此接下来介绍组合,组合是实现类重用的重要方式,能提供更好的封装性。
子类扩展父类的时候,可以从父类那里继承得到Field和方法,假设现在我们有足够的权限,那么子类就可以直接复用父类的Field和方法,但继承在带来高度复用的同时,也带来了一个严重的问题,继承严重的破坏了父类的封装性。在...
分类:
编程语言 时间:
2015-02-18 15:19:49
阅读次数:
309
过一段时间可能就得去找实习,今天在宿舍翻开以前常放在枕头边的大砖头《Java编程思想》打算重温下之前学的知识点,看到有关java初始化的一些知识,综合之前看过的网页和书籍,记下自己对java实例变量初始化的理解,仅供需要的朋友参考,也为自己积累一些java编程应该注意的知识点。
java中对实例变量的初始化可以在三个地方出现:定义实例变量时指定初始值;初始化块中为实例变量指定的初始值;构...
分类:
编程语言 时间:
2015-02-02 09:43:47
阅读次数:
306