java日常学习:instanceof、final和抽象类
来源:互联网 发布:linux 建立多级目录 编辑:程序博客网 时间:2024/04/28 08:57
java代码块
instanceof关键字
instanceof关键字: 判断一个对象是否属于指定的类型。
instanceof关键字的使用前提: 判断的对象与指定的类型必须存在继承的关系,或者是实现的关系。
instanceof关键字的使用格式:
对象 instanceof 类名
instanceof关键字的作用: 学习完多态之后才有作用。做类型转换 之前先判断,否则容易报错。
final关键字
final(最终)
final关键字要注意的细节 :
1. final关键字修饰一个基本类型变量时, 该变量不能重新赋值。
2. final关键字修饰一个引用类型变量时,其引用重新指向新的对象。
3. final修饰一个方法时,该方法不能被重写。
4. final修饰一个类的时候,该类不能被继承。
常量的修饰符: public static final.
常量命名规范: 所有字母大写,单词与单词之间使用下划线分隔 。
抽象类
abstract(抽象)
抽象类的应用场景:
描述一类事物的时候,发现该事物确实存在着某种行为,但是目前该行为是不具体的,
那么这时候我们应该抽取该方法的声明,不去实现该方法,这时候我们应该使用抽象类。
抽象类要注意的细节:
1. 如果一个方法没有方法体,那么该方法必须使用abstract修饰。
2. 如果一个类有抽象的方法,那么该类也必须使用abstract修饰。
3. 非抽象类继承抽象类的时候,必须要把抽象类中的所有抽象方法全部实现。
4. 抽象类可以定义抽象方法以及非抽象方法。
5. 抽象类是可以不存在抽象方法的。
6. 抽象类不能创建对象。
疑问: 为什么抽象类不能创建对象呢?
因为抽象类一旦创建了对象就可以使用对象去调用方法了,一旦调用了抽象方法就没有任何的意义了。
7. 抽象类是存在构造方法的。
疑问:既然抽象类不能创建对象,那么存在构造方法的意义在那?
抽象类的构造方法是留给子类调用初始化从父类继续下去的成员变量的。
abstract不能与以下关键字配合使用:
1. abstract 不能与private配合使用。
2. abstract 不能与final关键字配合使用。
3. abstract 不能与static关键字配合使用。
练习
/*需求: 描述图形、矩形、 圆形三个类,首先要把三者之间的关系描述清楚,所有的图形都有计算面积以及周长的方法,但是每种图形的计算面积与周长方式并不一致。*///图形类;abstract class MyShape{ public abstract void getArea(); public abstract void getLength();}//矩形属于图形中一种; class Rect extends MyShape{ int height; int width; public Rect(int height,int width){ this.height = height; this.width = width; } public void getArea(){ System.out.println("矩形的面积是:"+height*width); } public void getLength(){ System.out.println("矩形的周长是:"+2*(height+width)); }}//圆形也是属于图形中一种;class Circle{ public static final double PI = 3.14; double r; public Circle (double r){ this.r = r; } public void getArea(){ System.out.println("圆形的面积是:"+PI*r*r); } public void getLength(){ System.out.println("圆形的周长是:"+2*PI*r); }}class demo1{ public static void main(String[] args) { Rect r = new Rect(3,4); r.getArea(); r.getLength(); Circle c = new Circle(3.0); c.getArea(); c.getLength(); }}
用于平时自己复习回顾,如有错误,欢迎指正
- java日常学习:instanceof、final和抽象类
- instanceof final 抽象类的理解
- 09.---抽象类、接口、instanceof、final、Object
- Java学习笔记之final 关键字和抽象类
- 关键字instanceof和final
- 【幻化万千戏红尘】qianfengDay09-java基础学习:接口,抽象类,抽象方法,多态,instanceof
- 【学习笔记09】java面向对象-final、抽象类
- java学习初探6之super final 抽象类
- 抽象类和关键字final
- final、抽象类和接口
- 抽象类、接口和final
- java— 抽象类、接口、final、的理解和例子
- JAVA面向对象5:final关键字、抽象类和接口
- JAVA 多态、final关键字、抽象类和方法、 day10
- Java关键字static,abstract,instanceof使用(静态属性,静态方法,抽象类抽象方法的学习)
- Java接口和抽象类以及接口的意义,instanceof的利用
- day6 多态--抽象类、接口、instanceof static、final 枚举类型enum
- 【JAVA 日常练习 13.9】+ 接口 + 抽象类
- ikbc机械键盘测评
- HYSBZ
- Ubuntu环境部署
- Laravel小项目之第4节 Laravel-通过表单实现新增及操作状态提示功能
- 操作zookeeper之原生API的基本操作
- java日常学习:instanceof、final和抽象类
- Tensorflow学习与应用三
- Python自动化第三周
- odd-even number (数位dp)
- c++STL中优先队列的使用
- zookeeper分布式锁思路(无代码)
- Makefile 理解
- 20171102
- 利用shell脚本实现mysql数据库表和表结构的对比