JAVA之当返回值类型和形参为引用参数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/z249486888/article/details/83242082

数据类型分为1、基本数据类型

                       2、引用数据类型 

引用类型是一个对象类型,指向堆内存中的地址

当返回值为引用类型时: 1、类 :返回值为引用类型的对象

                                           2、抽象类:返回值类型为抽象类的子类的上转型对象

                                           3、  接口:返回值类型为接口的实现类的对象

当形参为引用类型时:

                                           1、类 :传值为该类的对象

                                           2、抽象类:传值为抽象类的子类的上转型对象

                                           3、  接口:传值为接口的实现类的对象

1、当引用类型为类时

public class test {
	public static void main(String[] args) {
	Woman woman = new Woman();
	Man man = woman.a();
	man.eat();
	}
}
class Man{
	public abstract void eat(){
    System.out.println("吃饭");
}
}

class Woman{
	public Man a() {
		return new Man();
	}
}

2、当引用类型为抽象类时

public class test {
	public static void main(String[] args) {
	Woman woman = new Woman();
	Man man = woman.a();
	man.eat();
	}
}
abstract class Man{
	public abstract void eat();
}

class Woman{
	public Man a() {
		return new Son();
	}
}

class Son extends Man {
	public void eat() {
		System.out.println("吃饭");
	}
	public void sleep() {
		System.out.println("睡觉");
	}
}

3、当引用类型为接口时

public class test{
	public static void  main(String [] args) {
		
	}
}
interface Eat{
	public abstract void eatFood();
}
class Man{
	public Eat a() {
		return new Son();
	}
}
class Son implements Eat{
	public void eatFood() {
		System.out.println("吃肉");
	}
}

猜你喜欢

转载自blog.csdn.net/z249486888/article/details/83242082