精华内容
下载资源
问答
  • headfirstJava

    2018-10-19 17:19:19
    HeadFirstJava》(中文版)(第2版)是本完整的面向对象(object-oriented,OO)程序设计和Java的学习指导。此书是根据学习理论所设计的,让你可以从学习程序语言的基础开始一直到包括线程、网络与分布式程序等项目。最...
  • HeadFirstJava

    2018-04-23 14:43:17
    新手小白学习Java的入门书籍之一,里面详细说明Java的运行规则等等基础知识
  • headfirstjava

    2019-01-12 16:42:22
    headfirstjava谷歌
  • 资源名称:《Head First Java (中文版)》PDF内容简介:《Head First Java》是本完整的面向对象(object-oriented,OO)程序设计和Java的学习指导。此书是根据学习理论所设计的,让你可以从学习程序语言的基础开始...
  • HeadFirstJava HeadFirstJava学习书。
  • HeadFirstJava-源码

    2021-04-27 21:29:35
    HeadFirstJava 该存储库包含我使用“ Head First Java”一书学习Java时编写的所有脚本。 这项练习的目的是变得精通Java编程,然后使用它编写Cormen撰写的“ Introduction to Algorithms”一书中的算法脚本。
  • HeadFirstJava(扫描版,不是文字版,你找了全网扫描版都太糊了之后,再来试试这个。)
  • headfirstjava笔记.zip

    2021-06-15 11:30:14
    headfirstjava笔记.zip
  • HeadFirstJava2ndEditionPDFBooks-英文原版.zip
  • HeadFirstJava 中文版 PDF

    2012-07-18 14:39:40
    headfirst系列一直以其深入浅出、通俗易懂著称,书中大量的小故事,图表和插画,总是把高深的东东讲得趣味很浓。这次是java系列。
  • headfirstJava高清中文版

    2018-08-30 14:20:18
    headfirstJava高清中文版 真的很清楚哦,下载它就不用买书啦,只要1积分 来下载吧
  • HEADFIRSTJAVA》--深入浅出Java说明与归纳.pdf
  • HeadFirstJava_CH_PDF_深入浅出_Java 清晰版
  • Head First Java 2nd Edition – PDF Books
  • HeadFirstJava中文版_PDF

    2010-05-12 14:50:03
    HeadFirst Java中文版_PDF ,分上下两册讲解,个人感觉还不错
  • HeadFirstJava中文版6

    2008-02-25 21:30:01
    HeadFirstJava中文版6下面还有
  • HeadFirstJava:K.Sierra和B.Bates撰写的《 Head First Java》一书中的练习和实践
  • java上传文件源码
  • HeadFirstJava中文版

    2014-03-19 17:05:02
    HeadFirstJava中文版,需要的朋友可以拿去
  • 一、异常概念 Java的异常处理机制是执行期间状况处理方式,能够将处理错误状况的程序代码摆在一个易阅读的位置; 这要依赖于你已经知道所调用的方法可能产生异常,因此编写出处理次可能性的程序代码;...

    一、异常概念

    Java的异常处理机制是执行期间状况处理方式,能够将处理错误状况的程序代码摆在一个易阅读的位置;

    这要依赖于你已经知道所调用的方法可能产生异常,因此编写出处理次可能性的程序代码;

    查看方法的生命是否有throws语句即可知道该方法是否会抛出异常;

    public void test() throws InterruptedException{
    	Thread.sleep(1000);
    }

    异常是一种Exception类型的对象,Exception的对象可以是其子类的实例;

    编译器不会注意RuntimeException类型的异常,因此其不需要声明或被包在try/catch的块中,然而还是可以这么做;

    编译器关心检查异常,程序必须认识有异常可能的存在;




    二、有风险方法调用方式

    1 处理

    若要处理异常状况,就调用包在try/catch块中,并将异常处理/恢复程序放在catch块中;

    1.1 处理异常

    方法可抓住其他方法所抛出的异常,异常总是丢回给调用方;

    public void test(){
    	try{
    		// 危险动作
    		Thread.sleep(1000);
    	}catch(Exception e){
    		// 尝试恢复
    		// 若无法从异常中恢复,至少也要使用printStackTrace()列出有用的信息
    		e.printStackTrace();
    	}finally{
    		// 无论如何都要执行,即使try或catch有return指令,也会执行
    	}
    }

    也可以抛出的异常父类来catch异常,但捕获所有异常,会导致不清楚哪里出错;

    try{
    	laundry.doLaundry();
    }catch(ClothingException e){
    	// 恢复代码
    }

    1.2 处理多重异常

    若有必要,方法可抛出多个异常;

    但方法的声明必需要含有全部可能的检查异常;(若两个或以上的异常有共同的父类,可只声明该父类)

    public class Laundry{
    	public void doLaundry() throws PantsException, LingerieException{
    		// 可能抛出两个异常的程序代码
    	}
    }

    也可以异常的父类声明会抛出的异常;

    public void doLaundry() throws ClothingException{
    	// 声明成ClothingException可抛出任何该类的子类
    }

    1.3 多个catch块

    编译器会检查是否处理所有可能的异常,将个别的catch块逐个放在try块下;

    public class Foo{
    	public void go(){
    		Laundry laundry = new Laundry();
    		try{
    			laundry.doLaundry();
    		}catch(PantsException pex){
    			// 恢复代码
    		}catch(LingerieException lex){
    			// 恢复代码
    		}
    	}
    }

    为每个需要单独处理的异常编写不同的catch块;

    注意:多个catch块要从小到大排,因为Java虚拟机智慧从上往下找到第一个符合范围的异常处理块;

    try{
    	laundry.doLaundry();
    }catch(TeeShirtException tex){
    	// 恢复代码
    }catch(LingerieException lex){
    	// 恢复代码
    }catch(ClothingException cex){
    	// 恢复代码
    }

    1.4 异常处理规则

    catch与finally不能没有try

    try与catch之间不能有程序

    try一定要有catch或finally

    只带有finally的try必须要声明异常


    2 声明(duck掉)

    若不打算处理异常,将异常duck掉,抛给调用该方法的方法,若main()方法也duck掉异常,Java虚拟机就挂掉了;

    会抛出异常的方法必须声明它会抛出异常,如InterruptedException;

    public void test() throws InterruptedException{
    	// 危险动作
    	Thread.sleep(1000);
    }


    展开全文
  • headFirstjava》源代码

    热门讨论 2012-12-28 21:18:18
    文件为Java经典书籍《headfirstjava》的源代码,书中所有例子的代码都在其中
  • 继承 子类继承父类,即子类继承父类的方法和实例变量,子类可加入自己的方法和实例变量,也可以覆盖继承自父类的方法,但实例变量无法覆盖; 其中,覆盖指由子类重新定义继承下来的方法以改变或延伸此方法的行为;...

    一、继承

    1 概念

    子类继承父类,即子类继承父类的方法和实例变量,子类可加入自己的方法和实例变量,也可以覆盖继承自父类的方法,但实例变量无法覆盖;

    其中,覆盖指由子类重新定义继承下来的方法以改变或延伸此方法的行为;

    子类是extends父类出来的;

    举例:

    public class Doctor{
    	// 一个实例变量
    	boolean worksAtHospital;
    	// 一个方法
    	void treatPatient(){
    	}
    }
    
    public class FamilyDoctor extends Doctor{
    	//新加实例变量
    	boolean makeHouseCalls;
    	// 新加方法
    	void giveAdvice(){
    	}
    }
    
    public class Sugeon extends Doctor{
    	// 覆盖父类的方法
    	void treatPatient(){
    	}
    	// 新加方法
    	void makeIncision(){
    	}
    }

    2 设计继承层次

    a 找出具有共同属性和行为的对象

    b 设计代表共同状态与行为的类

    c 决定子类是否需要让某项行为(即方法)有特定的运作方式

    d 通过寻找使用共同行为的子类来找出更多抽象化的机会

    e 完成类的继承

    3 注意

    3.1 当调用对象引用的方法,Java虚拟机会调用到与该对象类型最接近的方法,即最低阶的方法;

    3.2 若子类中继续引用父类的方法,再加上额外的行为,可在父类中设计所有子类都适用的功能实现,通过super关键字取用父类,如:

    public void roam(){
    	super.roam();
    	// my own roam stuff
    }

    3.3 父类可通过存取权限决定子类是否能继承某些特定的成员,权限有private、default、protected、public,越往右限制程度越小,存取权限控制谁可以接触什么,如public类型的成员会被继承,private类型的成员不会被继承;

    3.4 大部分继承深度不会超过两层;

    3.5 只有内部类,没有私有类概念,即类不能标记为私有,但有三种方法防止某个类被作出子类,一是存取控制,不标记公有的类只能被同一个包的类作出子类;二是使用final修饰符,表示其是继承树的末端,不能被继承;三是让类只拥有private的构造程序;


    二、多态

    运用多态时,引用类型可以是实际对象类型的父类,参数和返回类型也可以是实际对象类型的父类;

    通过多态,可编写出引进新型子类时也不必修改的程序;

    Animal myDog = new Dog();
    
    class Vet{
    	public void giveeShot(Animal a){
    		a.makeNoise();
    	}
    }
    class PetOwner{
    	public void start(){
    		Vet v = new Vet();
    		Dog d = new Dog();
    		Hippo h = new Hippo();
    		v.giveShot(d);	// 执行Dog的makeNiose()
    		v.giveShot(h);	// 执行Hippo的makeNiose()
    	}
    }


    三、覆盖

    1 概念

    若只想防止特定的方法被覆盖,可将该方法标识上final修饰符;将整个类标识成final,表示没有任何的方法可以被覆盖;

    2 覆盖规则

    参数必须要一样,且返回类型必须要兼容;

    不能降低方法的存取权限;


    四、方法的重载

    1 概念

    重载是两个方法的名称相同,但参数不同,故重载与覆盖没有关系;

    2 重载规则

    返回类型可以不同;

    不能只改变返回类型;

    可更改存取权限;

    public class Overloads{
    	String uniqueID;
    	
    	public int addNums(int a, int b){
    		return a + b;
    	}
    	
    	public double addNums(double a, double b){
    		return a + b;
    	}
    	
    	public void setUniqueID(String theID){
    		uniqueID = theID;
    	}
    	public void setUniqueID(int ssNumber){
    		String numString = "" + ssNumber;
    		setUnique(numString);
    	}
    }


    展开全文

空空如也

空空如也

1 2 3 4 5 ... 14
收藏数 272
精华内容 108
关键字:

headfirstjava

java 订阅