- 浏览: 153356 次
- 性别:
- 来自: 北京
最新评论
-
瓶鱼跃:
嗯嗯,写的挺好···
希尔排序 -
stinge:
wangzaidali 写道 是不是感觉太简单了?呵呵 ...
JQuery提交表单 -
wangzaidali:
JQuery提交表单 -
Will.Du:
挺好的,不过你的层数太少,如果是extends了两次,那么su ...
super 与 this -
goo.goo:
temp.b.add(b.get(i)); 这里也得clo ...
Java中Cloneable接口的用法
文章列表
数据结构_树
一、树的定义
(1)有且仅有一个根节点;
(2)当结点个数大于1时,其余节点可分为互不相交的子树。 递归定义
概念:
结点的度
:节点拥有的子树数;
叶子 ...
多线程
一、线程概念
线程,有时被称为轻量级进程
(Lightweight Process,LWP),是程序执行流的最小单元
。一个标准的线程由线程ID
,当前指令指针(PC),寄存器
集合和堆栈
组成。另外,线程是进程
中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统
资源,只拥有一点在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。一个线程可以创建
和撤消
另一个线程,同一进程中的多个线程之间可以并发执行。由于线程之间的相互制约,致使线程在运行中呈现出间断性。线程也有就绪
、阻塞
和运行
...
文件处理
Java以流的方式处理输入与输出,即数据流
一、流
从键盘输入数据,写入文件,读取文件都可看做是流的处理,可分为输入流 与 输出流
流中的数据由字符与位组成。
有关文件处理的类 ...
异常处理
异常:编译时无法发现,执行时会出错,出错的状况就是 异常
error
表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况
exception
表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况
为什么?
用if else去编写捕捉错误的程序 很难捕获所有错误,并且执行效率低下
使用异常处理,易于使用、可自定义异常类、允许抛出异常、不中止程序。
异常处理:
try{
/ ...
文件分割与访问控制
一、文件分割:将大型应用程序分开成独立的类,将编写的类分别存放在不同的文件中。
使用包(package)实现文件分割:
1、声明:在类或接口所在文件的最上面一行加上
package 包的名称;
这样该文件内的所有类或接口都将包含进相同的包内。
2、不同的包内可以拥有名称相同的类。
3、在文件中若未指明包名称,且文件不在任何包下, 则都被包含进“没有名称的包"内,否则要声明所在包。
4、不同包之间的访问
如果某个类需要被访问必须把这个类公开出来,也就是声明为pu ...
Java 类
成员函数定义
修饰符 返回类型 成员函数名(参数){
}
其中返回类型必须放在最后,修饰符内的顺序可以调换
例: public final void method(){
}
public 和final的顺序可以互换,void在最后
Java接口
一、功能与抽象类相似,作为模板使用来衍生子类。
不同: (1) 接口的成员变量必须初始化,并设置为final类型,也就是成员变量必须为常量,不能被修改
(2)成员函数必须全为抽象函数
定义:
interface 接口名称
{
final 数据类型 成员名称 = 常数;
修饰符 abstract 返回类型 成员函数名(参数);
}
//其中 final与abstract可以省略
实现:
class 类名 implements 接口名
{
}
二、类似抽象类
利用父类 ...
抽象类
一、作用: 作为类的模板
,用来依据抽象类的格式来修改并创建新的类。
二、不能直接创建对象,只能通过抽象类衍生出新的类,再由子类创建对象。
三、定义:
abstract class 类名
{
成员变量声明;
//一般方法
返回类型 函数名(参数列表){
}
//抽象方法,方法体在子类中定义
修饰符 abstract 返回类型 函数名(参数);
}
利用父类的数组变量来访问子类对象的成员
(1)先创建父类的数组变量;
(2)创建子类对象并放入数组,利用数组元素来访问子类的内容。
...
以父类的变量访问子类对象的成员
以父类声明变量,并将它指向用子类新建的对象。
此时使用此变量可调用 子类中覆盖父类中的成员函数,或子类中没有而父类中有的成员函数
用法:
利用父类的数组变量来访问子类对象的成员
(1)先创建父类的数组变量;
(2)创建子类对象并放入数组,利用数组元素来访问子类的内容。
例
package com;
public class JavaTest {
public static void main(String ar[])
{
TFather tc = new TChild();
tc.sh ...
super 与 this
- 博客分类:
- java
super 与 this
1、 构造函数内使用this() 和super()
this()来调用同一类内的其他构造函数,必须放在第一行
super()从子类的构造函数调用其父类的构造函数,必须放在第一行。
可以根据参数的不同选择调用 ...
java 类继承
一、继承的概念
将已有的功能加以扩展,实现代码的重复使用
现有类成为父类、基类
,衍生出的类称为子类、衍生类
java只允许单一继承,要实现多重继承,需要借助于接口。
二、继承关系
父类 子类
成员函数或变量 可继承,public protected 类型的成员可以直接在子类内访问,private类型成员,只能借助父类函数访问
构造函数 不可继承
...
JVM中对象的生命周期
在JVM运行空间中,对象的整个生命周期大致可以分为7个阶段:创建阶段(Creation)、应用阶段(Using)、不可视阶段
(Invisible)、不可到达阶段(Unreachable)、可收集阶段(Collected)、终结阶段(Finalized) ...
新建一个对象的,数据存储的位置可能不一样;JAVA存放数据的地方有:
程序运行时,我们最好对数据保存到什么地方做到心中有数。特别要注意的是内存的分配。有六个地方都可以保存数据:
(1)
寄存器。这是最快的保存区域,因 ...
一维数组,声明与初始化
(1)声明:Type ArrayName[];或Type[] ArrayName; //编译程序分配一段内存空间用来存储数组实体的地址
(2)分配内存地址:ArrayName = new Type[num];//分配足以存储num个Type类型的连续内存空间,并把该空间的地址存放在ArrayName中
(3)初始化:Type ArrayName[] = {v1,v2,...,vn};
二维数组
Type ArrayName[][];
ArrayName = new Type[列][行];
数组长度为final类型,不可变,通过a ...