JAVA面向对象

**

JAVA面向对象与异常

**
面向对象

刚开始接触JAVA语言,写一点自己对于面向对象的一些认识与理解,如有疏漏或是错误,还请指正。

在学习了C语言之后再接触JAVA,明显能感受到面向过程与面向对象的风格。C语言的编程是由一个个函数组成的,而在JAVA中,(或是说在面向对象语言中,虽然我也仅仅了解JAVA)核心在于对象,通过构建一个个类去对应需要面向的对象,并编写他们所具备的方法,来解决实际问题。面向对象的思维模式简化了解决问题的过程,从实现解决的过程,转变为指挥对象去实现它所需要实现的功能(方法)。面向对象语言的编写会消耗更多的内存,但基于它的编程更符合人的思维模式,使得编程人员更容易编写出易维护,易扩展,易复用的代码。

面向对象编程主要体现以下三大特性:

1.封装性
面向对象的核心思想之一就是把数据和对数据的操作封装在一起。通过抽象,从具体的实例中抽取共同性质形成一般概念,也就是JAVA中类的设计。类中包含了一些数据与方法,对应了某一类事物的属性与行为。通过类可以去创建具体的对象,来描述这一类型事物中的具体个体,一个对象又可以将自己的数据和类中对数据的操作合理有效地封装在一起。

2.继承
由一个类可以创建许多具有共性的对象,但是这些对象之间又会存在新的类别,比如:对于机动车类,其中又可能存在轿车类、越野车类、摩托车类…在创建一个类(父类)后,我们可以再创建继承自它的新的类(子类),子类会继承父类中的数据与方法,同时又可以拥有自己新的数据与方法,亦可改写父类的方法。

3.多态
多态有两种。一种是操作名称的多态,即多种不同的操作有着相同的名称,但是这些操作接收的信息肯定是不同的,通过对方法传递不同类型的信息,让它做出对应的操作。另一种是继承相关的多态,指的是同一个方法被不同类型调用时存在不同的操作,当一个类有多个子类时,它的子类可以改写继承到的方法,使得这一方法有了多种形态。接口也可以体现多态,不同类在实现同一个接口时可以有多种方法,因而接口变量在回调接口方法时也就有了 多种形态。

异常

异常,本质上就是程序运行期间发生的一些错误,比如使用空的引用、打开不存在的文件、数组下标越界等等。JAVA的异常处理机制可以对运行时发生的错误做出处理,使程序更加健壮。
JAVA使用throw关键词来抛出一个Exception子类的实例表示异常发生,使用try-catch语句来处理异常。可能发生异常的部分在try代码块里运行,当异常被抛出后,try部分会立即结束,由对应的catch块来接受并处理异常。

public class Main {
       public static void main(String args[])
       {
           int n=0,m=0,t=1000;
           try{
               m=Integer.parseInt("8888");
               n=Integer.parseInt("ab89");
               t=7777;
           }
           catch(NumberFormatException e){
               System.out.println("发生异常"+e.getMessage());
           }
           try{
               System.out.println("故意抛出I/O异常");
               throw new java.io.IOException("我是 故意的");
           }
           catch(java.io.IOException  e){
               System.out.println("发生异常"+e.getMessage());
           }
       }
}

借用一下《Java2实用教程》一书中的例子,在第一个try代码块中,在第二次调用parseInt方法时传入的字符串包含字母,该方法会抛出一个NumberFormatException对象,在后面对应的catch中处理,而第二个try代码块中主动抛出了一个java.io.IOException对象,在后面对应的catch中进行处理。结果如下:

发生异常For input string: "ab89"
故意抛出I/O异常
发生异常我是 故意的

如有不足(必然有),后续接着补充。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值