java-基本类型和引用类型作为形式参数

来源:互联网 发布:unity3d fbx 编辑:程序博客网 时间:2024/06/05 14:24
基本类型和引用类型作为形式参数
   基本类型:
      例如:
      class Demo {
            public int sum (int a,int b) {
           return a + b;
          }
      }
引用类型:
 类:
      例如:
class Student {    //学生类中的一个方法    public void show() {        System.out.println("好好学习");    }}class StudentDemo {    //这里的Student s是引用类型的形式参数    //如果一个方法的形式参数是一个类类型(引用类型)    //这里其实需要的是该类的对象    public void method(Student s) {        //调用学生类的方法        s.show();    }}
抽象类:
    需要的是抽象类的子类对象,因为抽象类不能实例化,必须用多态方式实例化。
案例:
Person抽象类:package com.haust.day10.demo2;public abstract class Person {     public abstract void study();}Student类继承Person抽象类:package com.haust.day10.demo2;public class Student extends Person {public void study() { System.out.println("好好学习!!");}}PersonDemo类:package com.haust.day10.demo2;public class PersonDemo {public void method(Person p){p.study();}}测试类:package com.haust.day10.demo2;public class Main {/** * @param args */public static void main(String[] args) {//需求:使用PersonDome中的method方法//目前是没有办法使用PersonDome中的method方法的//因为抽象类不能被实例化,所以只能先定义一个具体类PersonDemo pd = new PersonDemo();Person p = new Student();//使用父类引用,间接使用抽象类对象pd.method(p);//把抽象类Person对象p引用作为参数传递。}}

输出:

好好学习!

接口:
需要的是实现类对象,因为抽象类不能实例化,必须用多态方式实例化。

案例:

Love接口:package com.haust.day10.demo3;public interface Love {public abstract void love();}LoveDemo类:package com.haust.day10.demo3;public class LoveDemo {public void method(Love l){l.love();}}Student类:package com.haust.day10.demo3;public class Student implements Love {public void love() {         System.out.println("学生爱学习!");}}测试类:package com.haust.day10.demo3;public class Main {/** * @param args */public static void main(String[] args) {//需求:测试LoveDemo中的method方法//首先由于Love是接口,不能实例化,所以需要借助实现类通过多态间接"实例化"//首先创建具体类对象LoveDemo ld = new LoveDemo();//实现多态Love l = new Student();//调用方法传参:ld.method(l);}}
输出:

学生爱学习!






原创粉丝点击