学习内容:

一、使用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操作符判断对象类型及方法的重载的更多相关文章

  1. instanceof操作符判断对象类型

    instanceof 的语法格式如下: myobject instanceof ExampleClass myobject:某类的对象引用 ExampleClass:某个类 class Quadran ...

  2. 更精确的判断对象类型js方法

    function isArray(o) { return Object.prototype.toString.call(o) === '[object Array]'; } function isRe ...

  3. json转String 和 String转json 和判断对象类型

    function ajaxGetMenuList(){ $.getJSON("login.do", function(json){ var r = ""; zN ...

  4. c++派生类中构造函数和析构函数执行顺序、判断对象类型、抽象类、虚函数

    一. 代码: 1 #include<stdio.h> 2 #include<string.h> 3 #include<algorithm> 4 #include&l ...

  5. JavaScript判断对象类型及节点类型、节点名称和节点值

    一.JavaScript判断对象类型 1.可以使用typeof函数判断对象类型 function checkObject1(){ var str="str"; console.lo ...

  6. JS判断浏览器类型的方法总结(IE firefox chrome opera safari)

    JS判断浏览器类型的方法总结,可判别当前客户端所使用的浏览器是ie,firefox,safari,chrome或者是opera,另外js可以精确判断到ie浏览器的版本,依然直接上代码,需要的朋友可按照 ...

  7. JavaScript中判断对象类型方法大全2

    在JavaScript中,有5种基本数据类型和1种复杂数据类型,基本数据类型有:Undefined, Null, Boolean, Number和String:复杂数据类型是Object,Object ...

  8. JavaScript中判断对象类型方法大全1

    我们知道,JavaScript中检测对象类型的运算符有:typeof.instanceof,还有对象的constructor属性: 1) typeof 运算符 typeof 是一元运算符,返回结果是一 ...

  9. JavaScript中判断对象类型的种种方法

    我们知道,JavaScript中检测对象类型的运算符有:typeof.instanceof,还有对象的constructor属性: 1) typeof 运算符 typeof 是一元运算符,返回结果是一 ...

随机推荐

  1. testview属性之详解

    安卓开发当中TextView是最常用的组件之一了,那么现在就来详细的了解下TextView的属性: Android:autoLink设置是否当文本为URL链接/email/电话号码/map时,文本显示 ...

  2. 深入理解ES6之《ES7》

    指数运算符 Math.pow是可以进行求幂运算的求幂运算符是两个星号 let result = 5 ** 2 console.log(result) //25 console.log(result = ...

  3. Struts bean:define标签用法

    bean:define:有三个用途 一是定义新字符串常量: <bean:define id="foo" value="This is a new String&qu ...

  4. JavaScript操作select下拉框选项移动

    运行结果: 源代码: 1 <!DOCTYPE html> 2 <html lang="zh"> 3 <head> 4 <meta char ...

  5. 微信小程序人脸识别

    参考:https://cloud.tencent.com/document/product/1007/31071

  6. [ThinkPHP]2-Rce buuoj

    [ThinkPHP]2-Rce 进来是这个页面 构造路径. 好,构造正确,但是服务器拦截了对该操作的访问 打开提示网站,看到关键信息 分析正则 老版本的正则可以用 '@'符号表示模式.以下正则是模式e ...

  7. 时间篇之centos7修复ntpq: read: Connection refused

    关于ntp同步时间, 由于是解决问题,所以理论性内容不多. 关于UTC NTP要提供准确的时间,就必须有准确的时间来源,那可以用格林尼治时间吗?答案是否定的. 因为格林尼治时间是以地球自转为基础的时间 ...

  8. docker将jar打包镜像文件

    1.首先需要编写dockerfile文件,通过dockerfile文件将jar包打成镜像 编写dockerfile文件 # 定义父镜像 FROM java:8 # 维护者信息 MAINTAINER c ...

  9. Conda安装及第一个py程序

    Conda安装及第一个py程序 安装Conda 下载安装 在Anaconda官网下载Anaconda 打开Conda安装程序 设置好安装目录(这个一定要记好,后边要用),比如我的目录就是 D:\Pro ...

  10. Linux中权限对于文件和目录的区别

    Linux系统中的权限对于文件和目录来说,是有一定区别的 下面先列举下普通文件对应的权限 1)可读r:表示具有读取.浏览文件内容的权限,例如,可以对文件执行 cat.more.less.head.ta ...