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

xiaoxiao2021-02-28  85

基本类型和引用类型作为形式参数    基本类型:       例如:       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); } }输出:

学生爱学习!

转载请注明原文地址: https://www.6miu.com/read-76993.html

最新回复(0)