Java基础学习之final和多态及类型转换
finalkeyword:
finalkeyword是终于的意思,能够修饰类,成员变量,成员方法。
• 修饰类,类不能被继承
• 修饰变量,变量就变成了常量,仅仅能被赋值一次。
• 修饰方法,方法不能被重写
finalkeyword面试题
• final修饰局部变量
在方法内部,该变量不能够被改变,仅仅能够赋值一次。
在方法声明上,分别演示基本类型和引用类型作为參数的情况
基本类型。是值不能被改变
引用类型,是地址值不能被改变。
对象在堆内存的值是能够改变的。
• final修饰变量的初始化时机
在对象构造完成前就可以(非静态常量)
权限修饰符修饰局部变量没有不论什么意义。
多态:某一个事物,在不同一时候刻表现出来的不同状态。
看对象时,从有往左看。
举例:
猫能够是猫的类型。猫 m = new 猫();
同一时候猫也是动物的一种,也能够把猫称为动物。
动物 d = new 猫();
多态前提和体现
• 有继承关系
• 有方法重写
• 有父类引用指向子类对象
多态时成员訪问特点
成员变量
编译看左边。执行看左边
成员方法
编译看左边,执行看右边
静态方法和类相关
编译看左边,执行看左边
所以静态方法不能算方法的重写
对象的转换关系
(1) 向上转型:在创建对象时,对象能够作为本身的类型引用,能够作为父类型的引用(将一个子类对象直接赋值给一个父类的引用变量)。
向上转型语法:<父类型><引用变量>=new<子类型>
实际调用的是子类的方法。
(2)向下 转型:将父类的对象作为其子类的类型的引用(须要强制类型转换)。
向下转型的语法:<子类型> <引用变量> = (<子类型>)<父类型引用变量>;
类型转换注意事项
(1)向上,向下都必须是两个类型之间存在继承关系。
(2)向上时,系统会自己主动进行类型转换,无强制转换。
(3)向下时。仅仅有父类的引用变量才干转换成子类。一个父类的实例对象是不能被强制转换成子类的。
(4)基本数据类型的转换时仅仅能是数值型的数据(包含整型,字符型,浮点型),同一时候数值型无法同布尔类型转换。
多态的优点:提高代码的可维护性(由继承体现) 提高代码的扩展性
Java基础学习之final和多态及类型转换的更多相关文章
- java基础学习笔记三(多态)
多态? 多态是同一个行为具有多个不同表现形式或形态的能力. 存在的必要条件 继承 重写 父类引用指向子类对象 比如: Parent p = new Child(); 当使用多态方式调用方法时,首先检查 ...
- JAVA基础学习之final关键字、遍历集合、日期类对象的使用、Math类对象的使用、Runtime类对象的使用、时间对象Date(两个日期相减)(5)
1.final关键字和.net中的const关键字一样,是常量的修饰符,但是final还可以修饰类.方法.写法规范:常量所有字母都大写,多个单词中间用 "_"连接. 2.遍历集合A ...
- java基础学习之final关键字
final可以修饰类.方法.变量,一旦使用了final则将不能改变被修饰的对象的引用; 被final修饰的类不可以被继承 被final修饰的方法不可以被覆盖 被final修饰的变量一般为常量,只允许对 ...
- [转帖]java基础学习总结——多态(动态绑定)
https://www.cnblogs.com/xdp-gacl/p/3644035.html 多态的概念 java基础学习总结——多态(动态绑定) 一.面向对象最核心的机制——动态绑定,也叫多态
- 尚学堂JAVA基础学习笔记
目录 尚学堂JAVA基础学习笔记 写在前面 第1章 JAVA入门 第2章 数据类型和运算符 第3章 控制语句 第4章 Java面向对象基础 1. 面向对象基础 2. 面向对象的内存分析 3. 构造方法 ...
- Java基础学习(2)
Java基础学习(二) 面向对象 对象:客观存在的事物 面向对象:人具体关注的事物的某些信息 类:是模子,确定对象会拥有的特征(属性)和行为(方法) 对象的属性:对象具有的各种特征 对象的方法:对象能 ...
- Java基础学习-- 继承 的简单总结
代码参考:Java基础学习小记--多态 为什么要引入继承? 还是做一个媒体库,里面可以放CD,可以放DVD.如果把CD和DVD做成两个没有联系的类的话,那么在管理这个媒体库的时候,要单独做一个添加CD ...
- Java基础学习笔记总结
Java基础学习笔记一 Java介绍 Java基础学习笔记二 Java基础语法之变量.数据类型 Java基础学习笔记三 Java基础语法之流程控制语句.循环 Java基础学习笔记四 Java基础语法之 ...
- 转载-java基础学习汇总
共2页: 1 2 下一页 Java制作证书的工具keytool用法总结 孤傲苍狼 2014-06-24 11:03 阅读:25751 评论:3 Java基础学习总结——Java对象的序列化和 ...
随机推荐
- 企业级监控nagios实践
nagios 监控服务应用指南 小区:视频监控,保安 企业工作中为什么要部署监控系统 监控系统相当于哨兵的作用,监控几百台上千台服务器,监控系统非常重要. 监控系统都需要监控 1. 本地资源:负载up ...
- Angular 1.x 框架原理
指令生命周期 compile阶段 对dom进行编译,首先(如果有的话)对template进行应用(这个过程只执行一次).然后把当前指令(内部的指令还没被渲染)传递给iElement,接着执行compi ...
- k fit in Park Model
software: Gnuplot input: area_averaged_axial_mean_velocity_TI_1.txt # One Rotor, front, eldad blade ...
- POJ 2485 Highways (求最小生成树中最大的边)
Description The island nation of Flatopia is perfectly flat. Unfortunately, Flatopia has no public h ...
- CTO俱乐部官方群聊-探讨创业和跳槽
今天,CTO俱乐部官方群,有交流,若干活跃分子探讨了创业和跳槽等相关话题. 感觉质量很不错,就整理了下. 老徐 17:02:00 跳来跳去也不是长久之计,除了涨点工资 张苗苗 17:02:46 ...
- HDU1754-I Hate It,线段数水题~~2016.4.11
I Hate It ...
- 2016阿里校招python研发面试
一面: 面:说说你们学校的主修课程. 学校开的全是尼玛java课,这个我是想了有一会的. 面:看你简历写了会jquery,来问你个简单的jquery问题 :jQuery支不支持css引入. 呵呵 面: ...
- To_Date函数用法
spl> select * from emp where dates between to_date('2007-06-12 10:00:0 ...
- Open Judge 3339 List
3339:List 总时间限制: 4000ms 内存限制: 65536kB 描述 写一个程序完成以下命令:new id ——新建一个指定编号为id的序列(id<10000)add id nu ...
- equals() 和 hashCode()
equals() 和 hashCode()这两个方法在java.lang.Object中,所有的类都可以继承这两个方法: 但是,这两个方法在Object类中的实现一般没什么用,所以你通常需要自己重载这 ...