使用instanceof操作符判断对象类型及方法的重载
学习内容:
一、使用instanceof操作符判断对象类型
1.instanceof操作符可以判断一个实例对象是否属于一个类。
语法:对象名 instanceof 类名
2.使用instanceof表达式的返回值为布尔值,如果返回值为true,说明此对象是该类的实例对象,如果返回值为false,说明此对象不是该类的实例对象。
示例代码:
class Grandfather{//父类
public static void draw(Grandfather p) {
}
}
class Father extends Grandfather{//子类1
}
public class Son extends Grandfather{//子类2
static Grandfather p=new Grandfather();
public static void main(String[] args) {
// TODO 自动生成的方法存根
if(p instanceof Father) {
Father q=(Father)p;
System.out.println("对象p是Father类的对象,向下转型成功");
}
else System.out.println("对象p不是Father类的对象");
if(p instanceof Son) {
Son q=(Son)p;
System.out.println("对象p是Son类的对象,向下转型成功");
}
else System.out.println("对象p不是Son类的对象");
}
}
二、方法的重载
1.重载后的方法必须与原方法的参数个数或者类型不同。
2.不定长参数
语法:返回值 方法名(参数数据类型...参数名称)
示例代码:
package 方法重载;
import java.util.Scanner;
public class Test {
public static int add(int a,int b) {
return a+b;
}
public static double add(double a,double b) {
return a+b;
}
public static int add(int...a) {//不定长参数a,在参数列表使用“...”形式定义不定长参数,其实这个不定长参数a就是一个数组。
int sum=0,i;
for(i=0;i<a.length;i++) {
sum+=a[i];
}
return sum;
}
public static void main(String[] args) {
// TODO 自动生成的方法存根
Test t=new Test();
int a=add(1,2);
double b=add(1,3);
int c=add(1,2,3,4,5,6);
System.out.println("调用函数int add()结果为:"+a);
System.out.println("调用函数double add()结果为:"+b);
System.out.println("调用函数int add(int...a)结果为:"+c);
}
}
运算结果:
调用函数int add()结果为:3
调用函数double add()结果为:4.0
调用函数int add(int...a)结果为:21
明天任务:多态、抽象类与接口
使用instanceof操作符判断对象类型及方法的重载的更多相关文章
- instanceof操作符判断对象类型
instanceof 的语法格式如下: myobject instanceof ExampleClass myobject:某类的对象引用 ExampleClass:某个类 class Quadran ...
- 更精确的判断对象类型js方法
function isArray(o) { return Object.prototype.toString.call(o) === '[object Array]'; } function isRe ...
- json转String 和 String转json 和判断对象类型
function ajaxGetMenuList(){ $.getJSON("login.do", function(json){ var r = ""; zN ...
- c++派生类中构造函数和析构函数执行顺序、判断对象类型、抽象类、虚函数
一. 代码: 1 #include<stdio.h> 2 #include<string.h> 3 #include<algorithm> 4 #include&l ...
- JavaScript判断对象类型及节点类型、节点名称和节点值
一.JavaScript判断对象类型 1.可以使用typeof函数判断对象类型 function checkObject1(){ var str="str"; console.lo ...
- JS判断浏览器类型的方法总结(IE firefox chrome opera safari)
JS判断浏览器类型的方法总结,可判别当前客户端所使用的浏览器是ie,firefox,safari,chrome或者是opera,另外js可以精确判断到ie浏览器的版本,依然直接上代码,需要的朋友可按照 ...
- JavaScript中判断对象类型方法大全2
在JavaScript中,有5种基本数据类型和1种复杂数据类型,基本数据类型有:Undefined, Null, Boolean, Number和String:复杂数据类型是Object,Object ...
- JavaScript中判断对象类型方法大全1
我们知道,JavaScript中检测对象类型的运算符有:typeof.instanceof,还有对象的constructor属性: 1) typeof 运算符 typeof 是一元运算符,返回结果是一 ...
- JavaScript中判断对象类型的种种方法
我们知道,JavaScript中检测对象类型的运算符有:typeof.instanceof,还有对象的constructor属性: 1) typeof 运算符 typeof 是一元运算符,返回结果是一 ...
随机推荐
- 腾讯云+社区开发者大会开启报名,WeGeek 邀你一起聊聊小程序
刚满 2 岁的微信小程序,正给我们带来一种全新轻便的生活方式. 内测时的青涩还历历在目,到现在,小程序生态已日渐成熟.超过 150 万开发者在这里找到了自己的新天地,打磨出超过 100 万个小程序. ...
- 原型模式故事链--new一个对象的过程
上一个总标题:https://segmentfault.com/a/11...提问:你有对象了吗?答:没有.笨!new一个不就好了吗! 问题点:为什么我要理解new一个对象的过程?答:不理解这个过程, ...
- css使div居中
每次想要使div居中都会设置position:absolute;,发现设置其他控件位置时会出现问题,所以采用以下办法: margin:0 auto;
- 【weex开发】vue-swipe 滑动组件的使用
一,vue-swipe简介 vue-swipe 是饿了么团队开发的vue专用的轮播图插件: 可以实现简单的图片和view轮播,可控制动画时长,可限制手动滑动: 简而言之,可以实现轮播,也可以实现ppt ...
- Python里的引用与拷贝规律
python的可变不可变与各种浅拷贝深拷贝规则,一并梳理. Python一切皆引用 在C++/Java里,int a = 1就是创建变量为a,赋值为1:int b = a就是创建变量b,赋值为a的值. ...
- 「实践篇」解决微前端 single-spa 项目中 Vue 和 React 路由跳转问题
前言 本文介绍的是在做微前端 single-spa 项目过程中,遇到的 Vue 子应用和 React 子应用互相跳转路由时遇到的问题. 项目情况:single-spa 项目,基座用的是 React,目 ...
- 三个步骤,从零开始快速部署LoRaServer
2021年11月29日,ITU(国际电信联盟)标准化部门正式批准了LoRa联盟立项的"ITU-T Y.4480 Low power protocolfor wide area wireles ...
- 讲解CPU之NUMA硬件体系以及机制(lscpu查看相关信息)
先看看从系统层面反映出来的numa cpu信息.采样机器为实体机.80核.128内存. [root@ht2 src]# lscpu Architecture: x86_64 #x86架构下的64位 C ...
- 一些有用的工具,iftop,iotop,htop,glances
一些有用的工具: yum install glances -y资源监控工具GLANCESglances 可以为 Unix 和 Linux 性能专家提供监视和分析性能数据的功能,其中包括:CPU 使用率 ...
- python的注释、变量、常量基础
一.注释 1.什么是注释 注释就是对代码的解释说明,注释的内容不会被当作代码运行 2.为什么要注释 增强代码的可读性 3.怎么用注释? 代码注释单行和多行注释 单行注释用#号,可以跟在代码的正上方或正 ...