自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(256)
  • 收藏
  • 关注

原创 8.throws子句

如果一个方法可以导致一个异常但不处理它,它必须指定这种行为以使方法的调用者可以保护它们自己而不发生异常。做到这点你可以在方法声明中包含一个throws子句。一个 throws 子句列举了一个方法可能抛出的所有异常类型。这对于除Error或RuntimeException及它们子类以外类型的所有异常是必要的。一个方法可以抛出的所有其他类型的异常必须在throws子句中声明。如果不这样做,将会导致

2014-08-21 17:17:10 154

原创 7.throw:异常的抛出

到目前为止,你只是获取了被Java运行时系统抛出的异常。然而,程序可以用throw语句抛出明确的异常。Throw语句的通常形式如下:    throw ThrowableInstance;这里,ThrowableInstance一定是Throwable类类型或Throwable子类类型的一个对象。简单类型,例如int或char,以及非Throwable类,例如String或Object,不

2014-08-21 13:16:01 415

原创 6.try语句的嵌套

Try语句可以被嵌套。也就是说,一个try语句可以在另一个try块内部。每次进入try语句,异常的前后关系都会被推入堆栈。如果一个内部的try语句不含特殊异常的catch处理程序,堆栈将弹出,下一个try语句的catch处理程序将检查是否与之匹配。这个过程将继续直到一个catch语句匹配成功,或者是直到所有的嵌套try语句被检查耗尽。如果没有catch语句匹配,Java的运行时系统将处理这个异常。

2014-08-21 13:15:07 510

原创 5.多重catch语句的使用

某些情况,由单个代码段可能引起多个异常。处理这种情况,你可以定义两个或更多的catch子句,每个子句捕获一种类型的异常。当异常被引发时,每一个catch子句被依次检查,第一个匹配异常类型的子句执行。当一个catch语句执行以后,其他的子句被旁路,执行从try/catch块以后的代码开始继续。下面的例子设计了两种不同的异常类型:// Demonstrate multiple catch stat

2014-08-20 17:27:55 455

原创 4.try和catch的使用

尽管由Java运行时系统提供的默认异常处理程序对于调试是很有用的,但通常你希望自己处理异常。这样做有两个好处。第一,它允许你修正错误。第二,它防止程序自动终止。大多数用户对于在程序终止运行和在无论何时错误发生都会打印堆栈轨迹感到很烦恼(至少可以这么说)。幸运的是,这很容易避免。为防止和处理一个运行时错误,只需要把你所要监控的代码放进一个try块就可以了。紧跟着try块的,包括一个说明你希望

2014-08-20 17:26:59 388

原创 3.未被捕获的异常

在你学习在程序中处理异常之前,看一看如果你不处理它们会有什么情况发生是很有好处的。下面的小程序包括一个故意导致被零除错误的表达式。class Exc0 {    public static void main(String args[]) {        int d = 0;        int a = 42 / d;    }}当Java运行时系统检查到被零除

2014-08-20 13:20:04 221

原创 2.异常类型

所有异常类型都是内置类Throwable的子类。因此,Throwable在异常类层次结构的顶层。紧接着Throwable下面的是两个把异常分成两个不同分支的子类。一个分支是Exception。该类用于用户程序可能捕捉的异常情况。它也是你可以用来创建你自己用户异常类型子类的类。在Exception分支中有一个重要子类RuntimeException。该类型的异常自动为你所编写的程序定义并且包

2014-08-20 13:18:43 142

原创 1.异常处理基础

Java异常是一个描述在代码段中发生的异常(也就是出错)情况的对象。当异常情况发生,一个代表该异常的对象被创建并且在导致该错误的方法中被抛出(throw)。该方法可以选择自己处理异常或传递该异常。两种情况下,该异常被捕获(caught)并处理。异常可能是由Java运行时系统产生,或者是由你的手工代码产生。被Java抛出的异常与违反语言规范或超出Java执行环境限制的基本错误有关。手工编码产生的异常

2014-08-19 17:17:16 103

原创 6.接口和抽象类的选择

由于从某种角度讲,接口是一种特殊的抽象类,它们的渊源颇深,有很大的相似之处,所以在选择使用谁的问题上很容易迷糊。我们首先分析它们具有的相同点。➢ 都代表类树形结构的抽象层。在使用引用变量时,尽量使用类结构的抽象层,使方法的定义和实现分离,这样做对于代码有松散耦合的好处。➢ 都不能被实例化。➢ 都能包含抽象方法。抽象方法用来描述系统提供哪些功能,而不必关心具体的实现。抽象类和接口的主

2014-08-19 17:14:27 148

原创 5.接口的使用

接口的一般使用接口的使用与类的使用有些不同。在需要使用类的地方,会直接使用new关键字来构建一个类的实例进行应用:    ClassA a =new ClassA();这是正确的 但接口不可以这样用,因为接口不能直接使用 new 关键字来构建实例。    SataHdd sh = new SataHdd();这是错误的,接口在使用的时候要实例化相应的实现类。实现类的格式如下:

2014-08-19 13:41:06 90

原创 4.接口概念以及使用接口的原因

接口概念Java 可以创建一种称作接口(interface)的类,在这个类中,所有的成员方法都是抽象的,也就是说它们都只有定义而没有具体实现,接口是抽象方法和常量值的定义的集合。从本质上讲,接口是一种特殊的抽象类,用interface,可以指定一个类必须做什么,而不是规定它如何去做。定义接口的语法格式如下:访问修饰符 interface 接口名称 {    抽象属性集    抽象方

2014-08-19 13:39:59 238

原创 3.抽象类的概念和使用

什么是抽象类有时在开发中,要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该行为,而是在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。这种只给出方法定义而不具体实现的方法被称为抽象方法,抽象方法是没有方法体的,在代码的表达上就是没有“{}”。怎么表示一个方法是抽象的呢?使用 abstract 修饰符来表达抽象。abstract 修饰符可

2014-08-18 17:25:32 184

原创 2.内部类的分类

内部类按照使用上可以分为四种情形:类级:成员式,有 static 修饰对象级:成员式,普通,无 static 修饰本地内部类:局部式匿名级:局部式成员式内部类内部类可以作为外部类的成员,示例如下:public class Outer1 {    private int size;    public class Inner {        public voi

2014-08-18 17:23:56 110

原创 1.内部类的概念和特点

什么是内部类内部类(Inner Classes)的概念是在 JDK1.1 版本中开始引入的。在 Java 中,允许在一个类(或方法、语句块)的内部定义另一个类,称为内部类,有时也称为嵌套类(Nested Classes)。内部类和外层封装它的类之间存在逻辑上的所属关系,一般只用在定义它的类或语句块之内,实现一些没有通用意义的功能逻辑,在外部引用它时必须给出完整的名称。 引入内部类的好处

2014-08-18 13:58:34 237

原创 11.类与类之间的关系

类与类之间最常见的关系主要有以下三种:依赖(或uses–a)聚合(或has–a)继承(或is–a)下面使用在线书店订单系统为例,来详细的讲述这三种关系的概念:这个系统的主要功能是:注册用户可以登录到网上书店并选购图书。在线填写订单,并支付购书款。书店确认已经收到购书款时,按用户留下的地址邮寄图书。可以在这个系统中建立几个类,有图书(book)、账户(account)、订单(orde

2014-08-16 17:23:30 233

原创 10.final关键字

在 Java 中声明类、属性和方法时,可使用关键字 final 来修饰。final 所标记的成分具有“终态”的特征,表示“最终的”意思。其具体规定如下:final 标记的类不能被继承。final 标记的方法不能被子类重写。final 标记的变量(成员变量或局部变量)即成为常量,只能赋值一次。final 标记的成员变量必须在声明的同时赋值,如果在声明的时候没有赋值,那么只有 一次赋值的机会,

2014-08-16 17:21:35 97

原创 9.static关键字与静态块

一.static修饰符static 修饰符能够与属性、方法和内部类一起使用,表示是“静态”的。类中的静态变量和静态方法能够与“类名”一起使用,不需要创建一个类的对象来访问该类的静态成员。所以static修饰的变量又称作“类变量”。这与实例变量不同。实例变量总是用对象来访问,因为它们的值在对象和对象之间有所不同。下列示例展示了如何访问一个类的静态变量:class Static

2014-08-16 16:08:47 69

原创 8.多态对象的类型转换

在你接收父类的一个引用时,你可以通过使用 instanceof 运算符判定该对象实际上是你所要的子类,并可以用类型转换该引用的办法来恢复对象的全部功能。public void method(Employee e) {    if (e instanceof Manager) {        Manager m = (Manager)e;        System.out.pri

2014-08-16 09:13:54 69

原创 加强计算机软件设计可维护性的措施探究

加强计算机软件设计可维护性的措施探究近年来,我国的忘了通信技术及计算机应用技术已经在我们的生产生活各个方面进行了广泛的应用,为我国的经济发展及生活水平的提升起到了极大的作用,随之而来的就是计算机软件的迅猛发展,由于生产模式的转变,人们工作、生活习惯的改变,各种各样的新需求,就必须要不断的创新,以顺应目前的计算机软件不断变化的需要。在这种情况背景下,计算机软件的分析师及设计师要采用一些高效的

2014-08-15 18:14:12 347

原创 基于因特网的大型Intranet广域网构建

基于因特网的大型Intranet广域网构建1引言  随着因特网的高速发展和公司及各大型组织规模的不断壮大,传统的公司间的数据传输模式已远不能满足公司及组织发展的需要。在公司及其各分部之间建立一条跨越地区乃至国家的网络线路就成了各大型公司及组织的当务之急。而在网络线路的设计过程中伴随而来的是组织内部间的数据安全性及传输可靠性的问题。本文通过实际案例说明了组织内部的通信网络的设计方案。In

2014-08-15 18:12:41 261 1

原创 7.instanceof 运算符

多态性带来了一个问题 :如何判断一个变量所实际引用的对象的类型 。 C++使用runtime-type information(RTTI),Java 使用 instanceof 操作符。instanceof 运算符功能:用来判断某个实例变量是否属于某种类的类型。一旦确定了变量所引用的对象的类型后,可以将对象恢复给对应的子类变量,以获取对象的完整功能。 示例如下:    publ

2014-08-15 16:42:59 119

原创 6.多态的概念

什么是多态多态是同一个行为具有多个不同表现形式或形态的能力。比如我们说“宠物”这个对象,它就有很多不同的表达或实现,比如有小猫、小狗、蜥蜴等等。那么我到宠物店说“请给我一只宠物”,服务员给我小猫、小狗或者蜥蜴都可以,我们就说“宠物”这个对象就具备多态性。再回想一下经理和职员的关系,经理类具有父类职员类的所有属性、成员和方法。这就是说,任何在Employee上的合法操作在Mana

2014-08-15 16:40:04 435

原创 5.方法的覆盖和重载

方法的覆盖什么是方法的覆盖(Overridden Methods)在类继承中,子类可以修改从父类继承来的行为,也就是说子类能创建一个与父类方法有不同功能的方法,但具有相同的:名称、返回类型、参数列表。如果在新类中定义一个方法,其名称、返回类型及参数表正好与父类中方法的名称、返回类型及参数相匹配,那么,新方法被称做覆盖旧方法。示例:如下在 Employee 和 Manager 类

2014-08-15 08:54:01 154

原创 4.super关键字

关键字 super 可被用来引用该类的父类,它被用来引用父类的成员变量或方法。父类行为被调用,就好象该行为是本类的行为一样,而且调用行为不必发生在父类中,它能自动向上层类追溯。super 关键字的功能:点取父类中被子类隐藏了的数据成员。点取已经覆盖了的方法。作为方法名表示父类构造方法。点取父类中被子类隐藏了的数据成员或方法public class Employee {

2014-08-14 17:45:00 217

原创 3.父类与子类的初始化顺序

在 Java 编程语言中,对象的初始化是非常结构化的,这样做是为了保证安全。在前面的模块中,看到了当一个特定对象被创建时发生了什么。由于继承性,对象被完成,而且下述行为按顺序发生:存储空间被分配并初始化到 0 值进行显式初始化调用构造方法层次中的每个类都会发生最后两个步骤,是从最上层开始。Java 技术安全模式要求在子类执行任何东西之前,描述父类的一个对象的各个方面都必须初始化。因

2014-08-14 16:40:56 116

原创 2.继承的概念与实现

提示,类与类之间最常见的关系主要有三种:依赖(uses–a)、聚合(has–a)、继承(is–a)。详情请查看:Java类与类之间的关系。在面向对象世界里面,常常要创建某对象(如:一个职员对象),然后需要一个该基本对象的更专业化的版本,比如,可能需要一个经理的对象。显然经理实际上是一个职员,经理和职员具有 is-a 的关系,经理只是一个带有附加特征的职员。因此,需要有一种办法从现有对象

2014-08-14 14:59:00 147

原创 1.封装

封装这个词听起来好象是将什么东西包裹起来不要别人看见一样,就好象是把东西装进箱子里面,这样别人就不知道箱子里面装的是什么东西了。其实 JAVA 中的封装这个概念也就和这个是差不多的意思。封装是 JAVA 面向对象的特点的表现,封装是一种信息隐蔽技术。它有两个含义:即把对象的全部属性和全部服务结合在一起,形成一个不可分割的独立单位;以及尽可能隐藏对象的内部结构。也就是说,如果我们使用了封装技

2014-08-13 17:40:45 129

原创 10.包装类

虽然 Java 语言是典型的面向对象编程语言,但其中的 8 种基本数据类型并不支持面向对象的编程机制,基本类型的数据不具备“对象”的特性----不携带属性、没有方法可调用。 沿用它们只是为了迎合人类根深蒂固的习惯,并的确能简单、有效地进行常规数据处理。这种借助于非面向对象技术的做法有时也会带来不便,比如引用类型数据均继承了 Object类的特性,要转换为 String 类型(经常有这种需要

2014-08-13 17:27:06 79

原创 9.方法重载

在 Java 中,同一个类中的 2 个或 2 个以上的方法可以有同一个名字,只要它们的参数声明不同即可,这种方法就被称为重载(overloaded),此过程称为方法重载( method overloading)。下面看一个详细的实例。class overload{    ///一个普通的方法,不带参数    void test(){        System.out.pr

2014-08-13 13:12:19 152

原创 8.this关键字

关键字 this 是用来指向当前对象或类实例的,可以用来点取成员。this.day 指的是调用当前对象的 day 字段,示例如下:public class MyDate {    private int day, month, year;    public void tomorrow() {        this.day = this.day + 1;       

2014-08-13 13:01:50 113

原创 7.构造方法和析构方法

Java构造方法类有一个特殊的成员方法叫作构造方法,它的作用是创建对象并初始化成员变量。在创建对象时,会自动调用类的构造方法。构造方法定义规则:Java 中的构造方法必须与该类具有相同的名字,并且没有方法的返回类型(包括没有void)。另外,构造方法一般都应用 public 类型来说明,这样才能在程序任意的位置创建类的实例--对象。示例:下面是一个 Rectangle 类的构造

2014-08-12 17:34:14 336

原创 6.再谈变量的作用范围

前面的章节,在讲变量的时候,曾经提到过变量的作用范围(作用域)(请查看:http://www.weixueyuan.net/view/5951.html),但是由于我们的准备知识不够充分,仅仅对全局变量和局部变量进行了说明,在学习了类和对象以后,我们有必要进一步了解变量的作用范围。Java 变量的作用范围有四个级别:类级、对象实例级、方法级、块级。类级变量又称全局级变量,在对象产生

2014-08-12 14:05:43 155

原创 5.类的基本运行顺序

作为程序员,应该对自己写的程序具备充分的掌控能力,应该清楚程序的基本运行过程,否则糊里糊涂的,不利于对程序的理解和控制,也不利于技术上的发展。 我们以下面的类来说明一个基本的 Java 类的运行顺序:1. public class Test {2.     private String name;3.     private int age;4.5.     public

2014-08-12 13:21:34 124

原创 4.成员变量和成员方法

成员变量成员变量是指类的一些属性定义,标志类的静态特征,它的基本格式如下:    访问修饰符 修饰符 类型 属性名称=初始值;访问修饰符:可以使用四种不同的访问修饰符中的一种,包括public(公共的)、protected(受保护的),无修饰符和 private(私有的)。public 访问修饰符表示属性可以从任何其它代码调用。private 表示属性只可以由该类中的其它方法来

2014-08-11 18:10:42 551

原创 3.包的概念

包”机制是 Java 中特有的,也是 Java 中最基础的知识之一。一些初学 Java 的朋友,通常像学其他语言一样从教材上“copy”一些程序来运行,可是却常常遇到莫名其妙的错误提示,这些问题事实上都是对“包”的原理不理解。本节将就此问题进行深入阐述。什么是 Java 中的包在 Java 程序语言中,为了开发方便,会将多个功能相似的类放到一个组内,而这个组就是“包”,包就像一个目录结

2014-08-11 17:24:14 243

原创 2.访问控制符

在 Java 程序设计中,有一个很重要的知识点,就是访问控制符。不要看它的内容简单,但其重要性决定了程序可运行性。一.什么是访问控制符访问控制符在 Java 程序语言中,有着举足轻重的作用。那什么是访问控制符呢?所谓的访问控制符就是能够在控制访问权限的关键字。在 Java 程序语言中的访问控制符有好几种,但是它又被分为不同的类别,具体的划分情况如下:(1)出现在类之前的访问控制符:

2014-08-11 15:26:40 298

原创 1.类的定义与实例化(创建对象)

本节着重讲解Java语法,不再对类和对象的概念进行深入阐述,如果你不了解类与对象的基本概念,请查看这里:类与对象的基本概念、面向对象编程(OOP)的概念。Java类的定义在Java中,类的定义语法为:[public][abstract|final] class className [extends superclassName] [implements interfaceNameL

2014-08-11 15:24:34 1076

原创 9.Java字符串概述

字符串从表面上看,就是引号之间的数据,如“www.weixueyuan.net”、“微学苑”、“c++入门教程”等。在Java中,字符串处理类库使用最多的是两种:“String”类和“StringBuffer”类。注意:如果是处理一些小的文本,建议使用“String”类,它会特别方便。如果使用 String 类来处理大型文本,会很消耗系统资源,所以 Java 程序语言特别引进了“Strin

2014-08-09 16:50:28 93

原创 8.二维数组的声明和初始化

二维数组的声明、初始化和引用与一维数组相似,这里不再详讲。二维数组的定义  type arrayName[ ][ ];  type [ ][ ]arrayName;只是形式上的差别,大家可以根据自己的习惯来选择。二维数组的初始化1.静态初始化    int intArray[ ][ ]={{1,2},{2,3},{3,4,5}};Java语言中,由于把二维数

2014-08-09 16:49:27 345

原创 7.一维数组的声明和初始化

一维数组的声明使用一个数据时,必须要对其进行声明,这个道理对于数组来说也一样,数组在使用之前也必须先声明。先看下面的代码,是如何声明一个变量的。    int a;仔细分析一下:int 是指变量的数据类型,a 是指变量名,由变量的声明可以联系到数组的声明。    int a[];仔细分析一下:int 是指数组中所有数据的数据类型,也可以说是这个数组的数据类型,a[]表示数组名。

2014-08-08 16:52:09 648

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除