java 值与引用

package com.lining;

 

public class Test {

public void play(animal a){

System.out.println("动物年龄为:"+a.age);

}

public static void main(String[] args){

Cat cat=new Cat(12,45);

Cat cat2=new Cat(12,45);

System.out.println("值为:"+cat.equals(cat2));

System.out.println("值为:"+(cat==cat2));

String str="lining";

String str2="lining";

System.out.println("值为:"+str.equals(str2));

System.out.println("值为:"+(str==str2));

Dog dog=new Dog(23,45);

animal ani=new animal(10);

System.out.println("cat is or isn't a animal ?"+(cat instanceof animal));

System.out.println("dog is or isn't a animal ?"+(dog instanceof animal));

System.out.println("ani is or isn't a animal ?"+(ani instanceof animal));

System.out.println("ani is or isn't a cat ?"+(ani instanceof Cat));

Test t=new Test();

t.play(ani);

t.play(cat);

t.play(dog);

animal a=(animal)cat;

System.out.println("a is or isn't a cat ?"+(a instanceof Cat));

}

}

class animal{

int age;

animal(int a){

this.age=a;

}

}

class Cat extends animal{

int age;

int weight;

Cat(int a,int w){

super(a);

this.age=a;

this.weight=w;

}

public boolean equals(Object obj){

if(obj==null)

{

return false;

}

else if(obj instanceof Cat){

return true;

}

else

{

return false;

}

}

}

class Dog extends animal{

int age;

int weight;

Dog(int a,int w)

{

super(a);

this.age=a;

this.weight=w;

}

}

 

===============================================================

 

值为:true

值为:false

值为:true

值为:true

cat is or isn't a animal ?true

dog is or isn't a animal ?true

ani is or isn't a animal ?true

ani is or isn't a cat ?false

动物年龄为:10

动物年龄为:12

动物年龄为:23

a is or isn't a cat ?true

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值