java--引用类型返回值解析

本文详细介绍了Java中引用类型作为返回值的情况,包括类、抽象类和接口的使用示例。通过案例展示了如何在不直接创建对象的情况下,利用方法返回值来调用相应的方法,如`Student`类的`study()`、抽象类`Person`的`study()`和接口`Love`的`love()`方法,体现了Java的多态特性。
java--引用类型返回值解析

引用类型:
  类:返回的是该类的对象。
    案例:
类Student:
    package com.haust.day10.demo4;
public class Student  {


	public void study() {
		 System.out.println("好好学习!!");
	}
}
类StudentDemo:
package com.haust.day10.demo4;


public class StudentDemo {
	public Student getStudent(){
		
		return new Student();
	}


}
测试类:
package com.haust.day10.demo4;
public class Main {


	public static void main(String[] args) {
		//需求:在不直接创建对象的情况下使用StudentDemo中的getStudent方法
        StudentDemo sd = new StudentDemo();
        Student s = sd.getStudent();//调用方法,得到返回值Student的对象引用
        s.study();//调用方法
	}


}
  抽象类:返回的是该抽象类的子类对象
    案例:
抽象类:Person:
package com.haust.day10.demo5;
public abstract class Person {
     public abstract void study();
}

类:PersonDemo
package com.haust.day10.demo5;


public class PersonDemo {
	public Person getPerson(){
		//Person p = new Student();
		//return p
		//或者下面的方法
		return new Student();
	}
}

类Student:
package com.haust.day10.demo5;
public class Student extends Person {


	public void study() {
		 System.out.println("好好学习!!");
	}
}

测试类:
package com.haust.day10.demo5;
public class Main {
	public static void main(String[] args) {
		//需求:不直接创建对象的情况下使用Student类里面的study方法
        PersonDemo pd = new PersonDemo();
        Person p = pd.getPerson();//new Student  --Person p = new Student();多态
        p.study();
        
	}
}
  接口:返回的是该接口的实现类的对象。
    案例:
 
  接口:Love
package com.haust.day10.demo6;
public interface Love {
	public abstract void love();
}

类:LoveDemo
package com.haust.day10.demo6;
public class LoveDemo {
	public Love getLove(){
		Love l = new Student();
		return l;
		//or
		//return new Student();
	}
}

类Student:
package com.haust.day10.demo6;


public class Student implements Love {


	public void love() {
         System.out.println("学生爱学习!");
	}
}

测试类:
package com.haust.day10.demo6;
public class Main {
	public static void main(String[] args) {
		//需求:使用Love中love方法输出学生爱学习!!
		
		LoveDemo ld = new LoveDemo();
		//实现多态
		Love l = ld.getLove();
		//调用方法传参:
		l.love();
	}
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值