java基础(十)之向上转型/向下转型
向上转型:将子类的对象赋值给父类的引用。
向下转型:将父类的对象赋值给子类的引用。
向上转型
Student a = new Student();
Person zhang = a;
或者
Person p = new Student();
向下转型
就比如学生是人,但是人不一定就是学生。因此做向下转型前提是先向上转型,再进行向下转型。
Student s = new Student();
Person p = s;
Student s1 = (Student) p;
结论:
1、一个引用能够调用哪些成员(类型、函数),取决于这个引用的类型;
2、一个引用调用的是哪一个方法,取决于这个引用所指向的对象;
java基础(十)之向上转型/向下转型的更多相关文章
- Java面向对象之多态(向上、向下转型)   入门实例
		
一.基础概念 多态: 重点是对象的多态性.某一事物的多种体现形态. 多态的作用: 1.提高了代码的扩展性,后期出现的功能,可以被之前的程序所执行. 2.不能使用子类特有的功能.只能使用覆盖父类的功能. ...
 - “全栈2019”Java第九十章:内部类可以向上或向下转型吗?
		
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
 - (转载)java多态(2)-------Java转型(向上或向下转型)
		
5.13.1 向上转型 我们在现实中常常这样说:这个人会唱歌.在这里,我们并不关心这个人是黑人还是白人,是成人还是小孩,也就是说我们更倾向于使用抽象概念“人”.再例如,麻雀是鸟类的一种(鸟类的子类), ...
 - Java基础十二--多态是成员的特点
		
Java基础十二--多态是成员的特点 一.特点 1,成员变量. 编译和运行都参考等号的左边. 覆盖只发生在函数上,和变量没关系. Fu f = new Zi();System.out.println( ...
 - Java基础十--接口
		
Java基础十--接口 一.接口的定义和实例 /* abstract class AbsDemo { abstract void show1(); abstract void show2(); } 8 ...
 - 第5节:Java基础 - 必知必会(下)
		
第5节:Java基础 - 必知必会(下) 本小节是Java基础篇章的第三小节,主要讲述Java中的Exception与Error,JIT编译器以及值传递与引用传递的知识点. 一.Java中的Excep ...
 - java上转型和下转型(对象的多态性)
		
/*上转型和下转型(对象的多态性) *上转型:是子类对象由父类引用,格式:parent p=new son *也就是说,想要上转型的前提必须是有继承关系的两个类. *在调用方法的时候,上转型对象只能调 ...
 - java 向上转型 向下转型
		
//父类 四边形 class Quadrangle{ public static void draw (Quadrangle q){ } } //子类 public class Parallelog ...
 - java 向上,向下转型
		
在对Java学习的过程中,对于转型这种操作比较迷茫,特总结出了此文.例子参考了<Java编程思想>. 目录 几个同义词 向上转型与向下转型 例一:向上转型,调用指定的父类方法 例二:向上转 ...
 
随机推荐
- ROS开发--在订阅话题的回调函数中发布话题
			
处理激光数据时,需要将处理后的激光数据再发布,需要保持一致的频率,所以必须在回调函数中发布激光数据信息. 代码参考:https://blog.csdn.net/heyijia0327/article/ ...
 - VS常用快捷键(最全)
			
智能提示:ctrl + J方法参数提示:ctrl + shift +空格智能标记(如:提示using.实现接口.抽象类等):ctrl + . 执行测试:ctrl + R,T(当前上下文),ctrl + ...
 - java开发就业招聘管理系统 ssh源码
			
开发环境: Windows操作系统开发工具: MyEclipse+Jdk+Tomcat+MySql数据库 此项目分为 用户 企业 管理员三种角色 运行效果图
 - hdu 6182A Math Problem(快速幂)
			
You are given a positive integer n, please count how many positive integers k satisfy kk≤nkk≤n. Inp ...
 - C语言库函数strstr、strch比较
			
该库函数包含在<string.h>头文件中,函数原型:extern char *strstr(char *str1, const char *str2);使用方法 char *strstr ...
 - python语言基础3
			
一:python函数 是组织好的,可重复使用的,用来实现单一,或相关联功能的代码块.以前使用过的一些Python提供的内建函数,如print().max(4,18).min(100,50).当然我们自 ...
 - spring整合websocket,如何在服务端依赖注入service
			
1.在pom.xml文件中添加jar包: <properties> <spring.version>4.0.5.RELEASE</spring.version> & ...
 - Linux运维--14.Kolla部署OpenStack使用external MariaDB Galera Cluster
			
使用haproxy+keepalived实现Mariadb负载均衡 controller2: 10.100.2.52 haproxy+keepalived controller3: 10.100.2. ...
 - netcore 添加swagger
			
1.添加相应的nuget包 2.配置服务和swaggerui startup.cs 中 configureServices 中添加下面代码: //swagger services.AddSwagge ...
 - 认识Flow(一)
			
Flow 是 facebook 出品的 JavaScript 静态类型检查工具.Vue.js 的源码利用了 Flow 做了静态类型检查,所以了解 Flow 有助于我们阅读源码. 为什么用 Flow J ...