学习内容:

一、使用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. Linux网络配置:Nat和桥接模式详解

    Linux网络配置:Nat和桥接模式详解 一.我们首先说一下VMware的几个虚拟设备: Centos虚拟网络编辑器中的虚拟交换机: VMnet0:用于虚拟桥接网络下的虚拟交换机: VMnet1:用于 ...

  2. HTTP1.1、HTTP2、HTTP3 演变

    推荐阅读:https://www.cnblogs.com/zwtblog/tag/计算机网络/ 目录 HTTP 基本概念 HTTP/1.1 相⽐ HTTP/1.0 提⾼了什么性能? HTTP/1.1如 ...

  3. 浏览器视图层级中的“根”:<html>和<body>的属性研究

    做前端开发的同学都会知道,每一个UI系统(比如IOS或Android)中都会有一个view hierarchy(视图层级)的概念,即所有的可视元素(大到一个页面,小到一个button)都在一个树形结构 ...

  4. ubuntu root密码问题

    安装完Ubuntu后忽然意识到没有设置root密码,不知道密码自然就无法进入根用户下.到网上搜了一下,原来是这麽回事.Ubuntu的默认root密码是随机的,即每次开机都有一个新的root密码.我们可 ...

  5. 用CSS实现Tab页切换效果

    用CSS实现Tab切换效果 最近切一个页面的时候涉及到了一个tab切换的部分,因为不想用js想着能不能用纯CSS的选择器来实现切换效果.搜了一下大致有下面三种写法. 利用:hover选择器 缺点:只有 ...

  6. Android 动态控制OptionMenu的显示与隐藏

    在有些场景下,可能需要动态的显示和隐藏optionmenu,可以这样实现:如果在activity中默认实现了方法: onCreateOptionsMenu(Menu menu) 那么该OptionMe ...

  7. java基础-多线程线程池

    线程池 * 程序启动一个新线程成本是比较高的,因为它涉及到要与操作系统进行交互.而使用线程池可以很好的提高性能,尤其是当程序中要创建大量生存期很短的线程时,更应该考虑使用线程池.线程池里的每一个线程代 ...

  8. 技术管理进阶——什么Leader值得追随?

    原创不易,求分享.求一键三连 ​Leader眼里的主动性 前几天孙狗下面小A身上发生了一件Case,让他感到很疑惑: 有一个跨部门较多的项目推进不力,于是善于交流的他被临时提拔成项目负责人,但马上令人 ...

  9. springboot+maven实现模块化编程

    1.创建新项目repo-modele 2.右键Repo_modele -> New -> Module-->next 分别创建bs-web,bs-service,bs-entity, ...

  10. linux修改中文字符集

    //修改系统配置 cd /etc/profile //末尾加如下代码 export LC_ALL="zh_CN.GBK"export LANG="zh_CN.GBK&qu ...