java基础之instanceof的用法
来源:互联网 发布:加密db数据库怎么打开 编辑:程序博客网 时间:2024/06/02 00:00
转载请注明出处:http://blog.csdn.net/u010214991/article/details/49000115
instanceof是Java的一个二元操作符,和==,>, <是同一类东东。由于它是由字母组成的,所以也是Java的保留关键字。它的作用是测试它左边的对象是否是它右边的类的实例,返回boolean类型的数据。举个例子:
String s = "I am an object!";
boolean isObject = s instanceof Object;
我们声明了一个String对象引用,指向一个String对象,然后用instanceof来测试它所指向的对象是否是Object类的一个实例,显然,这是真的,所以返回true,也就是isObject的值为True。
此外,instanceof可以通过辨别对象所属的类来进行不同的操作,下面通过一个小例子来展示它的用处
import android.app.Activity;import android.content.Context;import android.os.Bundle;import android.widget.Toast;public class MainActivity extends Activity {private Context context;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);context = this;Teacher teacher = new Teacher();talk(teacher);}public class People {public void say() {Toast.makeText(context, "Hello World", Toast.LENGTH_SHORT).show();}}public class Student extends People {@Overridepublic void say() {// TODO Auto-generated method stubToast.makeText(context, "Hello Student", Toast.LENGTH_SHORT).show();}}public class Teacher extends People {@Overridepublic void say() {// TODO Auto-generated method stubToast.makeText(context, "Hello Teacher", Toast.LENGTH_SHORT).show();}}public void talk(People people) {if (people instanceof Student) {Student student = new Student();student.say();}if (people instanceof Teacher) {Teacher teacher = new Teacher();teacher.say();}}}上面这个例子非常简单易懂,类Teacher和类Student均继承自类People,在oncreate方法中,无非就是实例化了一个对象,然后通过talk方法传入这个对象来判断当前的这个对象属于哪个类,然后通过对应不同的类进行不同的操作罢了。由于例子中的对象属于Teacher类,很明显会执行talk方法中的第二个if语句,也就是最终会执行
Toast.makeText(context, "Hello Teacher", Toast.LENGTH_SHORT).show()这句代码了。
1 0
- java基础之instanceof的用法详解
- java基础之instanceof的用法
- java基础--instanceof用法
- Java基础之instanceof
- Java instanceof 的用法
- java:instanceof的用法
- 黑马程序员:Java基础——instanceof的用法
- Java 的instanceof的用法
- java的instanceof的用法
- java中instanceof的用法
- java中instanceof的用法
- java中instanceof的用法
- Java中的instanceof的用法
- java中instanceof的用法
- java中instanceof的用法
- java中instanceof的用法
- java中instanceof的用法
- java中instanceof的用法
- 使用Drozer进行安全测试(Drozer github上开源项目)
- C++ vector基础
- iOS开发 CoreAnimation
- svn源码安装
- 动态执行JS
- java基础之instanceof的用法
- oracle 导入导出命令
- 【扣丁学堂】十一归来,你才知道该努力了
- pageSwitch切屏回调函数
- Loader简单分析 AsyncTaskLoader简单使用
- GCM 发送接收消息 Message Client Server 服务器端,客户端
- noi oj7627 鸡蛋的硬度
- android开发的小知识点
- CSS圆角按钮