子类继承父类,当实例化子类对象时,执行顺序如下:父类层级静态块 自身静态块父类块 父类构造器自身块 自身构造器 由于继承,肯定应该先加载父类再加载子类,加载类自然会调用静态块,然后是调用父类的构造函数和子类的构造函数,不过构造函数调用前肯定要先调用域或块,这样才能正确创建对象。·········.....
分类:
编程语言 时间:
2015-03-08 15:44:00
阅读次数:
242
1、如果在子类中不写明构造函数,则java会自动为子类创建一个默认的构造函数,在构造函数中先调用父类的构造函数,也就是使用super函数来调用2、如果在子类中写明构造函数,可以不写super函数,但是也会调用父类的构造函数,只是现在调用父类的无参构造函数3、如果在子类中写明构造函数,可以使用supe...
分类:
编程语言 时间:
2015-03-08 15:41:45
阅读次数:
139
指针数组:首先它是一个数组,数组的元素都是指针,数组占多少个字节由数组本身决定。它是“储存指针的数组”的简称。 数组指针:首先它是一个指针,它指向一个数组。在32 位系统下永远是占4 个字节,至于它指向的数组占多少字节,不知道。它是“指向数组的指针”的简称。下面到底哪个是数组指针,哪个是指针数组呢:...
分类:
编程语言 时间:
2015-03-08 15:42:07
阅读次数:
157
基本算法主要分为以下四类:1、子结构类算法:分治算法,贪心法,动态规划子结构问题主要是要知道怎么从子结构问题的解推出现在问题的解,最粗糙的是简单递归,在递归的基础上进行改进就形成了分治、贪心和动态规划。 动态规划本质上只是减少了在递归过程中对子结构问题的重复求解,但是并没有缩小子结构问题的求解空.....
分类:
编程语言 时间:
2015-03-08 15:39:31
阅读次数:
133
static方法或属性是可以被继承的,static方法可以被子类覆盖,但是static方法不能作为抽象方法被子类重写父类中的final方法可以被子类所继承,但是不能在子类中覆盖或重写。简而言之,就是一旦在父类中把方法声明为final,则子类根本不能动这个方法一个被定义为abstract的类不一定要有...
分类:
编程语言 时间:
2015-03-08 15:40:50
阅读次数:
116
1、eclipse默认当前的根目录为工程所在的目录,即src的上一级目录,写路径时从src的上级目录开始找2、this.getclass().getclassLoader()默认从src目录开始找文件,即其根目录为src3、打包jar后默认的根目录为src,即文件从src开始找4、打包jar获取输入...
分类:
编程语言 时间:
2015-03-08 15:38:17
阅读次数:
142
抽象类更注重继承和派生,而接口更关注方法的协定抽象类可以包含属性,而接口通常不包含属性抽象类更加注重复用,接口更加注重调用者和被调用者的协定抽象类使得子类难以继承其他类,而接口可以让类还可以继承其他类,并且可以实现其他接口(类如果实现多继承则更容易发生“近亲结婚”的错误,而接口可以自由地横向扩展)
分类:
编程语言 时间:
2015-03-08 15:38:06
阅读次数:
164
1、可将内部类看成是外部类的Field,所用的修饰符和含义与Field相同(Field所用的修饰符和方法所用的一样),还可以用final,static,abstract2、在外部类中生成内部类class Outer{ class Inner{ }}class Test{ ...
分类:
编程语言 时间:
2015-03-08 15:37:35
阅读次数:
158
指针与引用的区别:1、指针本身就是一个对象,允许对指针赋值和拷贝,而且在指针的生命周期内它可以先后指向几个不同的对象;其二:指针无需在定义时赋值。指针在块作用域内定义如果没有被初始化,也将拥有一个不确定的值。 空指针: 得到空指针最直接的办法就是用字面值nullptr来初始化指针,这是C+ ...
分类:
编程语言 时间:
2015-03-08 15:35:48
阅读次数:
135
一、学习过程编写程序如下:编译连接并用debug加载,观察main函数的内容:Showchar函数的内容:观察发现,main函数要传递两个参数‘a’和2,在汇编代码中是先将2赋给ax,再将ax入栈,然后将a赋给ax,将ax入栈。在showchar函数中,程序将sp赋给bp,再从bp+4处取出形参a赋...
分类:
编程语言 时间:
2015-03-08 15:37:49
阅读次数:
230
第一种:暴力枚举所有的子数组,然后比较选出最大,时间复杂度O(n^2)第二种:分治法,参见算法导论,时间复杂度O(nlogn)第三种:动态规划,时间复杂度O(n)1、A[1..j+1]的最大子数组为:max{A[1..j] , A[i,j+1](10?A[j+1]+K[j]:A[j+1](以A[j+...
分类:
编程语言 时间:
2015-03-08 15:37:45
阅读次数:
156
参考书籍:《J2EE开源编程精要15讲》Struts是一个开源的Java Web框架,很好地实现了MVC设计模式。通过一个配置文件,把各个层面的应用组件联系起来,使组件在程序层面联系较少,耦合度较低。它定义了自己的标签库来实现是视图层,创建了一个内在的Servlet,叫ActionServlet,作...
分类:
编程语言 时间:
2015-03-08 15:32:37
阅读次数:
114
自从多线程编程的概念出现在 Linux 中以来,Linux 多线应用的发展总是与两个问题脱不开干系:兼容性、效率。本文从线程模型入手,通过分析目前 Linux 平台上最流行的 LinuxThreads 线程库的实现及其不足,描述了 Linux 社区是如何看待和解决兼容性和效率这两个问题的。一.基础知...
分类:
编程语言 时间:
2015-03-08 15:33:08
阅读次数:
224
1、try {//eclipse默认当前目录为工程根目录,则new File()中使用的相对路径应该是相对根目录的路径 FileInputStream input=new FileInputStream(new File("bin\\cn\\google\\demo\\data.txt")); by...
分类:
编程语言 时间:
2015-03-08 15:31:30
阅读次数:
192
java之所以引入包的概念就是为了把类名的命名空间限制在包以内,所以在一个包中不能有同名类通过import语句不仅能定位类,同时也会把类的命名空间引入每个.java文件之所以只能有一个和文件名同名的public类,主要原因如下:.java文件只向包外开放一个类,也就是里面只能有一个public类,如...
分类:
编程语言 时间:
2015-03-08 15:30:37
阅读次数:
159
本文对部分算法有参考其他博客,在这里注明,此为初稿,以后会不断修改!/*****************************************************************//*冒泡排序时间复杂度最好的情况为O(n),最坏的情况是O(n^2)*基本思想是:两两比较相邻记录...
分类:
编程语言 时间:
2015-03-08 15:31:23
阅读次数:
197
前言本文将探讨一下关于二维数组在内存中的存储和二维数组在参数传递时的使用。一、二维数组在内存中的存储如果定义一个这样的二维数组int a[3][4]={{1,3,5,7},{9,11,13,15},{17,19,21,23}};则其在内存中的表示可能下面这样的。由上图可以看出,在内存中二维数组是按照...
分类:
编程语言 时间:
2015-03-08 15:29:33
阅读次数:
195