Java之多态内部类小解释

Java之多态内部类
多态:继承实现的基础,Java中允许使用一个父类类型的变量来引用一个子类类型的对象,根据被引用子类对象特征不同,得到不同的运行结果。

内部类:在类里面定义的类,内部类是外部类的一个成员,java内部类可分为
1.成员内部类
2.方法内部类
3.匿名内部类:没有名字的类
匿名内部类例子代码

package cn.text;
interface Animal{

public abstract void shout();//定义抽象方法shout();
1
}
public class Example1 {
public static void main(String[] args) {
animalShout(new Animal() {
public void shout(){

			System.out.println("喵喵");
		}
	});
	
}
//定义一个静态方法animailShout()
public static void animalShout(Animal an) {
	an.shout();//调用传入对象an的Shout()方法
}

普通的方法

package cn.text;
interface Animal{
public abstract void shout();//定义抽象方法shout();
}
public class Example {
public static void main(String[] args) {
//定义一个内部类Cat实现Animal接口

class Cat implements Animal{
	  //实现shout方法
	  public void shout() {
		  System.out.println("喵喵。。。");
	  }
  }
  animalShout(new Cat());//调用animalShout() 方法并传入Cat
  }
//定义一个静态方法animailShout()
public static void animalShout(Animal an) {
an.shout();//调用传入对象an的Shout()方法
}
}

多态性代码

package cn.text;
/

对象的多态性
父类或接口的引用=new 子类的对象
/
//定义一接口Animal
interface Animal{
public abstract void shout();
}
//定义Cat类实现接口
class Cat implements Animal{
public void shout() {
System.out.println(“喵喵”);
}
}
//定义dog类实现animal接口
class Dog implements Animal{
public void shout() {
System.out.println(“旺旺”);
}
}
//定义测试类,多态
public class Example2 {
public static void main(String[] args) {
Animal an1=new Cat();//创建Cat对象,使用an1引用
Animal an2=new Dog();
animalShout(an1);
animalShout(an2);
}
public static void animalShout(Animal an) {
an.shout();
}
}

object类类层次结构的根类,每个类都直接或间接继承自此类,所有对象都实现了这个类的方法
equals ------------指示其他某个对象是否与此对象相等
getClass---------返回次object的运行时类
hashClass------返回该对象的哈希码值
toStirng----------返回该对象字符串表示

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值