------------android培训、java培训、java学习型技术博客、期待与您交流!------------
第一讲 形式参数
一、概述
说到形式参数问题,可能很多童鞋觉得没有必要写,我写这个的目的有俩点,一呢自己总结下,以后还可以来看看自己的总结的,而呢为一些还在懵懂中的童鞋顺便提供一些方便。
我这里所说到的形式参数问题以后也会经常遇到,我分别拿普通的class类、抽象类、接口类作为形式参数来举例,说实话,第一次的听的时候的确有些绕,我都整理了好几遍,好了,废话不多说了,直接看例子
二、应用举例
1、当类作为参数传递的时候,其实它想要的是一个对象,来提供一种方法。
/*
步骤:
1.定义动物类
2.想要动物,就是人提供一种方式去给动物喂吃的
*/
public class PersonTest {
public static void main(String[] args) {
Person person = new Person();//创建人的对象
Animal animal = new Animal();//创建动物的对象
person.method(animal);//人提供一种方式去给动物喂吃的
}
}
//动物类
class Animal{
public void eat(){
System.out.println("吃东西.......");
}
}
//人类
class Person{
public void method(Animal animal){参数是一个类名,其实它要的是一个对象
animal.eat();
}
}
结果为:
2、参数是一个抽象类名,但是抽象类不能new,只能new它的子类,其实它要的是一个子类对象。
/*
步骤:
1.定义动物类
2.想要动物,就是人提供一种方式去给动物喂吃的
*/
public class PersonTest1 {
public static void main(String[] args) {
Person p = new Person();//创建人的对象
Animal a = new Cat();//创建猫的对象
p.method(a);//人提供一种方式去给动物喂吃的
}
}
//动物类
abstract class Animal{
public abstract void eat();
}
class Cat extends Animal{
public void eat(){
System.out.println("吃鱼.......");
}
}
//人类
class Person{
public void method(Animal c){//参数是一个抽象类名,但是抽象类不能new,只能new它的子类,其实它要的是一个子类对象
c.eat();
}
}
结果为:
3、参数是一个接口名,但是接口不能new,只能new它的实现类,其实它要的是实现类的对象。
/*
步骤:
1.定义动物类
2.想要动物,就是人提供一种方式去给动物喂吃的
*/
public class PersonTest2 {
public static void main(String[] args) {
Person p = new Person();//创建人的对象
ShuShu s = new Cat();//创建猫的对象
p.method(s);//人提供一种方式去给动物喂吃的
}
}
//接口
interface ShuShu{
public abstract void shushu();
}
// 子类
class Cat implements ShuShu{
public void shushu(){
System.out.println("数小星星.......");
}
}
//人类
class Person{
public void method(ShuShu s){//参数是一个接口名,但是接口不能new,只能new它的实现类,其实它要的是实现类的对象
s.shushu();
}
}
结果为:
-----------android培训、java培训、java学习型技术博客、期待与您交流!------------