首页 > 其他分享 >Day8-3 instanceof和类型转换

Day8-3 instanceof和类型转换

时间:2022-11-18 14:13:08浏览次数:43  
标签:instanceof 类型转换 Day8 Person oop Student com public

instanceof和类型转换

判断一个对象是什么类型:instanceof

x instanceof y

 package com.oop;
 ​
 import com.oop.demo06.Person;
 import com.oop.demo06.Student;
 import com.oop.demo06.Teacher;
 ​
 public class Application {
     public static void main(String[] args) {
         Object object = new Student();
         System.out.println(object instanceof Student);
         System.out.println(object instanceof Person);
         System.out.println(object instanceof Object);
         System.out.println(object instanceof Teacher);
    }
 }

类型转换

  1. 父类引用指向子类对象

  2. 把子类对象转换为父类,向上转型,自动转换

  3. 把父类对象转换为子类,向下转型,强制转换

  4. 方便方法调用,减少重复代码

 package com.oop.demo06;
 ​
 public class Person {
     public void run(){
         System.out.println("run");
     }
 }

 

 public class Student extends Person{
     public void go(){
         System.out.println("go");
     }
 }

 

 
package com.oop;
 ​
 import com.oop.demo06.Person;
 import com.oop.demo06.Student;
 import com.oop.demo06.Teacher;
 ​
 public class Application {
     public static void main(String[] args) {
         //类型之间的转换
         //高                  低
         Person obj = new Student();
 ​
         //将student转换为Student类型,就可以使用Student类型的方法了
         ((Student)obj).go();
         //Student student = (Student)obj;
         //student.go();
         //子类转父类,可能会丢失自己本来的一些方法
         Student s1 =new Student();
         Person s2=s1;
 ​
     }
 }

 

 

标签:instanceof,类型转换,Day8,Person,oop,Student,com,public
From: https://www.cnblogs.com/actadams68/p/16903054.html

相关文章

  • Day8-1 方法的重写
    方法重写前提:需要有继承关系,子类重写父类的方法特点:方法名必须相同参数列表必须相同修饰符:范围可以扩大但不能缩小public>protected>default>private抛出......
  • C语言类型转换
    类型转换类型转换:在C语言中,当一个运算符的几个操作数类型不同时,编译器会在进行运算之前将他们共同转化为某种一样的数据类型,一般来说编译器会先将占用内存较小的数据转化为......
  • C 强制类型转换获取不同数据的字节表示
    #include<stdio.h>//指向类型为unsignedchar类型的对象指针typedefunsignedchar*byte_pointer;//size_t32位4字节64位8字节voidshow_bytes(byte_pointers......
  • MySql类型转换函数cast
    这两天处理一个现网的MySQL慢查询工单,学到了一个好用的MySQL函数:cast。事情是这样的:我们有两张表t_user和t_rule表,需要关联这两张表去查询,关联字段是t_user表的主键......
  • 一百题_每日一题Day8
    输入某年某月某日,判断这一天是这一年的第几天?1.月份处理:'''初始化'''l=[0,31,28,31,30,31,30,31,31,30,31,30,31]--以列表的形式存储,后续取数累加。2.闰年处理:'......
  • Javascript中字符串的instanceof String的结果
    如果是单纯的字符串赋给变量,虽然类型为string,但是instanceofString是false,并不是String对象,因为没有创建实例. 而这种new一个String实例则instanceof是属于String......
  • go--类型转换
    1int与string备注:string不可直接转int32,先转为int,再转成int32packagemainimport("fmt""strconv")funcmain(){//int转stringvaraint......
  • 类型转换
    由于Java是最强类型语言,所以要进行有些运算的时候,需要用到类型转换。低------------------------------------------高byte,short,char-->int-->long-->float-->double......
  • 类型转换
    1packagecom.Lucky.base;23publicclasstypeTransition{4publicstaticvoidmain(String[]args){5//类型转换6//低到高byt......
  • 多态性、instanceof关键字
    目录多态性向下转型instanceof关键字多态性理解多态性:可以理解为一个事物的多种形态。何为多态性:对象的多态性:父类的引用指向子类的对象(或子类的对象赋给父类的引用)多......