zoukankan      html  css  js  c++  java
  • 第九周课堂作业

    一、怎样判断对象是否可以转换?

    可以使用instanceof运算符判断一个对象是否可以转换为指定的类型:

    程序截图:

     

    结果截图:

     

     

     

    二、类型转换

    实验截图:

     

    结论:子类可直接赋给基类(基类变量=子类对象);基类的引用类型要传递给子类必须通过强制转换(子类变量=(子类名)基类对象);子类之间不可以进行转换。

     

     

     

    三、变态类

    程序截图:

     

    程序截图:

     

     

    原因及结论:

        当子类与父类拥有一样的方法,并且让一个父类变量引用一个子类对象时,到底调用哪个方法,由对象自己的真实类型所决定,这就是说:对象是子类型的,它就调用子类型的方法,是父类型的,它就调用父类型的方法。 这个特性实际上就是面向对象多态特性的具体表现。

        如果子类与父类有相同的字段,则子类中的字段会代替或隐藏父类的字段,子类方法中访问的是子类中的字段(而不是父类中的字段)。如果子类方法确实想访问父类中被隐藏的同名字段,可以用super关键字来访问它。 如果子类被当作父类使用,则通过子类访问的字段是父类的!

     

    四、关于异常

    程序源代码:

    import javax.swing.*;

    class AboutException 

    {

        public static void main(String[] a)

      {

          int i=1, j=0, k; k=i/j;

      try

          {

           k = i/j; // Causes division-by-zero exception //throw new Exception   

            ("Hello.Exception!");

           }

            catch ( ArithmeticException e)

                {

                         System.out.println("0. "+ e.getMessage());

                 }

                 catch (Exception e)

              {

                    if (e instanceof ArithmeticException) System.out.println("0");

                  else 

                     {    System.out.println(e.getMessage());

                        }

                   }

                    finally

                   {

                             JOptionPane.showConfirmDialog(null,"OK");

                    }

              }

    }

    程序截图:

     

     (第7行中主函数Zero出现异常)

     

    五、CatchWho.java

    程序截图:

     结果截图:

     

    六、finally语句块一定会执行吗?

     

     

    结果截图:

     结果截图:

    结论:finally语句不一定执行。

     

  • 相关阅读:
    HTTP 和 HTTPS
    HTTP 协议
    基础查询
    python编程从入门到实践笔记
    python-32-类的组合与初识继承
    python-31-初识面向对象与自定义类
    python-30-异常处理
    python-29-模块与包导入
    python-28-序列化模块
    python-27-其他常用模块(二)
  • 原文地址:https://www.cnblogs.com/ygl888/p/4967697.html
Copyright © 2011-2022 走看看