java学习心得3

定义了接口就是确定了调用对象的标准
interface 定义接口
接口是用implements来实现接口(实现是一种特殊的继承)
接口中的方法都是抽象方法
接口中的方法权限都是public(因为要继承)
接口可以继承多个接口(类只能继承一个父类)

例子:
interface USB
{//与类不同,这里的方法定义如果没有修饰符的话不是default,而是public,所以建议加上,明确一些。
public void read();
public void write();
}
class USBer implements USB(如果实例化的话,必须没有抽象方法,所以必须重写接口中的两个方法)
{
public void read()
{
}
public void write()
{
}
}
(向上转型可以用接口的引用来接收)
异常(产生异常是产生一个异常的对象,而抛出的可以是异常的引用,也可以是异常的对象(java中只有对象而言))
对于异常分为unchecks,以及checks,分别表示着无法捕捉的异常,和可以捕捉的异常,比如说一些软件以及硬件引起的异常是unchecks,一般情况下是RuntimeException以及Error异常,这不是程序本身的异常而是其他外界因素引起的异常。
如果是RuntimeException异常的话则不需要程序设计者去捕捉,但是其他的异常包括自定义的异常则要自己去捕捉同时进行处理。
异常的语法,throw(产生异常并且抛出异常),throws(可能抛出异常(可能没有产生异常,所以没有抛出异常,所以可以不用捕捉))用于方法声明异常(可以抛出多个异常)不在本方法内进行处理(如果出现异常虚拟机会自动回溯到上一层的方法中寻找catch语句中可以捕捉此异常的处理事件)
如果对于一个throw的使用,在本方法中没有相对应的catch来处理异常,那么这个方法一定要通过throws来声明这个方法是抛出异常给上一级方法处理。
《对于所有非运行时的异常,系统都要求进行捕捉,(对运行时异常,可以选择不捕捉,只是抛出)对于Error错误,是虚拟机引起的》
主要的异常有:
ClassCastException
ClassNotFoundException
ClassNullPointerException
异常类对象的函数有
getMassage()
printStackTrace()
printStackTrace(PrintStream s)
getStackTrace()
当用自定义的异常类需要调用父类的四个构造方法。

class ComputerException extends Exception
{
    public ComputerException()
    {
        super();
    }
    public ComputerException(String message)
    {
        super(message);
    }
    public ComputerException(String message,Throwable cause)
    {
        super(message,cause);
    }
    public ComputerException(Throwable cause)
    {
        super(cause);
    }
    public void run()
    {
        System.out.println("Computer is break.");
        System.out.println("..... repairing");
        try
        {
            Thread.sleep(3000);
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
        finally
        {
            System.out.println("Have been repaired.");
        }
    }
}
class MonitorException
{
    private int hardware;
    public MonitorException()
    {
        this.hardware=0;
    }
    public MonitorException(int hardware)
    {
        this.hardware=hardware;
        try
        {
            if(hardware<0)
            {
                throw new ComputerException("break....");
            }
        }
        catch(ComputerException e)
        {
            e.run();
            //e.printStackTrace();
        }
    }
}
public class Main
{
    public static void main(String [] agrs)
    {
        MonitorException a=new MonitorException(-1);
    }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java入门1·2·3:一个老鸟Java学习心得》是一本与众不同的Java入门好书。作者以独特的视角,向Java初学者讲述了如何才能真正理解和掌握Java语言。《Java入门1·2·3:一个老鸟Java学习心得》充分考虑了初学Java语言的种种困难,讲解时细致入微,抽丝剥茧,层层推进,并采用对比、比喻和类比的方式讲解,还给出了大量的流程图帮助读者理解各种概念和程序的运行过程。另外,作者专门录制了近16小时的多媒体语音教学视频帮助读者直观地学习。这些视频和书中的源代码一起收录于《Java入门1·2·3:一个老鸟Java学习心得》的DVD光盘中。 《Java入门1·2·3:一个老鸟Java学习心得》分3篇。第1篇为Java语言基本语法,包括Java语言概述、配置开发环境、Java中的基本数据类型、Java运算符、Java流程控制语句和数组。第2篇为Java语言高级语法,包括类、对象、方法、继承、多态、修饰符、接口、抽象类、内部类、Java异常处理和多线程编程。第3篇为Java语言编程进阶,包括Java编程常用知识、Java文件编程、Java文件I/O编程、Java TCP编程、Java UDP编程、Java Swing编程、JDBC编程,最后还给出了一个聊天程序实例和一个数据表操作窗口实例,将Swing、UDP、Java集合类、线程同步、接口和JDBC编程有机地结合起来,展示了开发一个简单程序的典型步骤。 《Java入门1·2·3:一个老鸟Java学习心得》适合广大想学习一门编程语言的读者、没有任何基础的Java入门读者、Java自学人员、从其他语言转向Java语言的读者、大中专院校的学生和社会培训学生。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值