[java]类&抽象类&接口分别作为方法参数和返回值
2017-06-08 21:43
573 查看
一 参数
1,类名作为参数
2,抽象类做为参数
3,接口做为参数
二.返回值
1,类名作为返回值
2,抽象类作为返回值
3,接口作为返回值
1,类名作为参数
package com.ma.demo; public class People { void show() { System.out.println("people show"); } } --- package com.ma.demo; public class PeopleDemo { void method(People p) { p.show(); } } --- package com.ma.demo; public class Test { public static void main(String[] args) { People p = new People(); PeopleDemo pd = new PeopleDemo(); pd.method(p); } } ----
2,抽象类做为参数
package com.ma.demo2; abstract class People { abstract void show(); } --- package com.ma.demo2; public class PeopleDemo { void method(People p) { p.show(); } } --- package com.ma.demo2; public class Student extends People { @Override void show() { // TODO Auto-generated method stub System.out.println("student show"); } } --- package com.ma.demo2; public class Test { public static void main(String[] args) { People p = new Student(); PeopleDemo pd = new PeopleDemo(); pd.method(p); } } ------
3,接口做为参数
package com.ma.demo3; interface People { public abstract void show(); } --- package com.ma.demo3; public class PeopleDemo { void method(People p) { p.show(); } } --- package com.ma.demo3; public class Student implements People { @Override public void show() { // TODO Auto-generated method stub System.out.println("student show"); } } --- package com.ma.demo3; public class Test { public static void main(String[] args) { People p = new Student(); PeopleDemo pd = new PeopleDemo(); pd.method(p); } } ------
二.返回值
1,类名作为返回值
package com.ma.demo4; public class People { void show() { System.out.println("people show"); } } --- package com.ma.demo4; public class PeopleDemo { People method() { return new People(); } } --- package com.ma.demo4; public class Test { public static void main(String[] args) { PeopleDemo pd = new PeopleDemo(); People p = pd.method(); p.show(); } } ------
2,抽象类作为返回值
package com.ma.demo5; abstract class People { public abstract void show(); } --- package com.ma.demo5; public class PeopleDemo { Student method() { return new Student(); } } --- package com.ma.demo5; public class Student extends People { @Override public void show() { // TODO Auto-generated method stub System.out.println("student show"); } } --- package com.ma.demo5; public class Test { public static void main(String[] args) { PeopleDemo pd = new PeopleDemo(); People p = pd.method(); p.show(); } } ----
3,接口作为返回值
package com.ma.demo6; interface People { public abstract void show(); } -- package com.ma.demo6; public class PeopleDemo { People method() { return new Student(); } } -- package com.ma.demo6; public class Student implements People { @Override public void show() { // TODO Auto-generated method stub System.out.println("student show"); } } ---- package com.ma.demo6; public class Test { public static void main(String[] args) { PeopleDemo pd = new PeopleDemo(); People p = pd.method(); p.show(); } } ----
相关文章推荐
- Java基础学习笔记十二 类、抽象类、接口作为方法参数和返回值以及常用API
- 14_Java面向对象_第6天(Eclipse高级、类与接口作为参数返回值)
- Java中“接口”可以作为方法的返回值吗?
- Array或ArrayCollection作为java方法参数
- 关于 mysql 存储过程 传递表名作为参数,以及从存储过程返回值的方法
- 14. JAVA 枚举(Enum、类集EnumMap&EnumSet 、实现接口、定义抽象方法) ----- 学习笔记
- Java接口作为参数
- 【转】DWR中Java方法的参数及返回值
- Java 把对象作为参数传到一个方法里,这个是值传递还是引用传递, 为什么结果这么怪?
- 接口作为参数,不同的接口调用不同的方法,例如:输出“I love Game”或输出“我喜欢游戏”
- 对无返回值、使用Action或Func作为参数、多重载的方法进行单元测试
- java 局部内部类的一般用途是实现某个接口,并作为这个接口传出方法被使用
- DWR中Java方法的参数及返回值上篇
- java学习笔记(四)----对象、数组作为参数传递,静态变量、静态方法的使用,内部类,使用文档注释
- VS2012 Unit Test(Void, Action, Func) —— 对无返回值、使用Action或Func作为参数、多重载的方法进行单元测试
- 提高Java代码重用性方法 措施二:把参数类型改成接口
- iBaits中,关于insert返回值的问题(注意!!!不必写resultClass= "java.lang.Integer",方法的返回值就是int)
- 提高Java代码重用性方法 措施二:把参数类型改成接口
- android java 层参数重载glVertexAttribPointer 在es20 C 接口中的处理方法
- Java接口中的变量和方法默认的类型<转>