java基础训练

}

}

public class Exception4 { }

public static void main(String[] args) { }

Math3 m=new Math3(); try{ }

System.out.println(\除法操作:\+m.div(10,0)); System.out.println(\异常处理:\+e); }catch(Exception e){

显示结果:

****计算开始**** ****计算结束****

异常处理:java.lang.ArithmeticException: / by zero

一、 对象的向下转型。

例:

class A{ }

class B extends A{ }

public class Passdown {

public static void main(String[] args) { A a=new B(); B b=(B)a; b.fun1();

public void fun1(){ }

public void fun3(){ }

System.out.println(\); System.out.println(\); public void fun1(){ }

public void fun2(){ }

public void fun(){ }

this.fun1();

System.out.println(\); System.out.println(\);

}

b.fun2(); b.fun3(); b.fun(); }

显示结果:

B→public void fun1(){} A→public void fun2(){} B→public void fun3(){} B→public void fun1(){}

解释:fun1()已经被子类覆写,则此时调用的方法是被子类覆写过的方法。 二、 抽象类的实际应用。 例:

abstract class Person{ }

class Student extends Person{

private float score; public float getScore(){ }

public void setScore(float score){ }

public Student(String name,int age,float score){ }

public String getContent(){

super(name,age); this.setScore(score); this.score=score; return score; private String name; private int age;

public Person(String name,int age){ }

public String getName(){ }

public int getAge(){ }

public void say(){

System.out.println(this.getContent()); }

public abstract String getContent();

return age; return name; this.name=name; this.age=age;

}

}

return \学生信息:姓名:\+super.getName()+\,年龄:\+super.getAge()+\

分数:\+this.getScore();

class Worker extends Person{ }

public class Pattern { }

显示结果:

学生信息:姓名:张三,年龄:19,分数:99.0 学生信息:姓名:李斯,年龄:20,工资:5000.0

public static void main(String[] args) { }

Person per1=new Student(\张三\,19,99); Person per2=null;

per2=new Worker(\李斯\,20,5000.00f); per1.say(); per2.say();

private float salary;

public Worker(String name,int age,float salary){ }

public String getContent(){ }

return \学生信息:姓名:\+super.getName()+\,年龄:\+super.getAge()+\super(name,age); this.salary=salary;

工资:\+this.salary;

一、 接口的实际应用——制定标准。

例如:U盘和打印机都可以插在计算机上,是因为二者均实现了USB的接口,对于计

算机来说,只要是符合了USB接口标准设备的就都可以插进来。 接口就是规定了一个标准,计算机认得只是接口,而对于具体的设备计算机本身并不关心。代码如下:

interface USB{ //定义usb接口

public void start(); //usb 设备开始工作 public void stop(); //usb 设备结束工作 }

class Computer{

public static void plugin(USB usb){ //只要是USB的设备就都可以插入

usb.start(); //让USB设备开始工作 System.out.println(\设备工作*****\); usb.stop(); //让USB设备停止工作

}

}

class Flash implements USB{ //U盘 public void start(){ }

class Print implements USB{ //打印机 }

public class Upan { }

显示结果: U盘开始工作。

*****USB设备工作***** U盘停止工作。 打印机开始工作。 *****USB设备工作***** 打印机停止工作。

二、使用Object接收接口实例 interface A1{ }

class B1 implements A1{ }

public class ObjectDemo {

public static void main(String[] args) { A1 a=new B1();//为接口实例化 public String getInfo(){ }

return \;

public String getInfo();//定义抽象方法 public static void main(String[] args) { }

Computer.plugin(new Flash()); //插入U盘 Computer.plugin(new Print()); //插入打印机 public void start(){

System.out.println(\打印机开始工作。\); }

public void stop(){ }

System.out.println(\打印机停止工作。\); }

public void stop(){

System.out.println(\盘停止工作。\); }

System.out.println(\盘开始工作。\);

}

Object obj=a;//对象向上转型 A1 x=(A1)obj;//对象向下转型

System.out.println(x.getInfo()); }

显示结果: Hello World!

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4