虚方法(virtual ) 简单的说,虚方法就是可以被子类重写的方法,如果子类重写了虚方法,那么运行时将使用重写后的逻辑,如果没有重写,则使用父类中虚方法的逻辑。 1,非虚方法的实现是一成不变的,无论在基类和派生类上调用,实现均相同。 2,虚方法能够在派生类中进行重写 3,虚方法重写时,不可改变访问 ...
1、final修饰的类:不能被其他类继承;2、final修饰的方法:不能被子类重写3、final修饰的变量 先理解两个概念:基本类型变量、引用变量。 基本数据类型变量:存的是数值本身,存放在栈内存中; 引用类型变量:存的是数据的地址,数据存放于堆内存中,引用变量是以间接的方式获取数据的; final ...
分类:
编程语言 时间:
2019-03-02 10:57:33
阅读次数:
237
多态的概述 多态是继封装、继承之后,面向对象的第三大特性。 最终多态体现为父类引用变量可以指向子类对象。 多态的前提是必须有子父类关系或者类实现接口关系,否则无法完成多态。 在使用多态后的父类引用变量调用方法时,会调用子类重写后的方法。 多态的定义与使用格式 多态的定义格式:就是父类的引用变量指向子 ...
分类:
编程语言 时间:
2019-02-25 13:45:22
阅读次数:
133
java基础4:深入理解final关键字 final关键字可以修饰类、方法和引用。 修饰类,该类不能被继承。并且这个类的对象在堆中分配内存后地址不可变。 修饰方法,方法不能被子类重写。 修饰引用,引用无法改变,对于基本类型,无法修改值,对于引用,虽然不能修改地址值,但是可以对指向对象的内部进行修改。 ...
分类:
编程语言 时间:
2019-02-08 19:57:56
阅读次数:
208
Java中,final关键字可以用来修饰类,方法和变量; 修饰类时:表明这个类不能被继承;类中的成员方法被隐式的指定为final方法;类中的成员变量可以根据需要指定为final。 修饰方法时:禁止子类重写父类的方法,也就是禁止子类不能够存在与父类相同的方法。 修饰变量:final修饰的变量为常量,只 ...
分类:
编程语言 时间:
2019-01-14 23:08:59
阅读次数:
223
本文主要介绍了final关键字的基本使用方法及原理 final关键字可以修饰类、方法和引用。 修饰类,该类不能被继承。并且这个类的对象在堆中分配内存后地址不可变。 修饰方法,方法不能被子类重写。 修饰引用,引用无法改变,对于基本类型,无法修改值,对于引用,虽然不能修改地址值,但是可以对指向对象的内部 ...
分类:
编程语言 时间:
2019-01-12 00:26:06
阅读次数:
218
目录介绍2.0.0.1重载和重写的区别?重载和重写绑定机制有何区别?父类的静态方法能否被子类重写?2.0.0.2封装、继承、多态分别是什么?2.0.0.3接口和抽象类的区别是什么?接口的意义是什么?抽象类的意义是什么?如何选择抽象类和接口?2.0.0.4什么是内部类,有哪些?有什么作用?静态内部类和非静态内部类的区别?2.0.0.5为什么内部类调用的外部变量必须是final修饰的?2.0.0.6J
分类:
编程语言 时间:
2018-12-24 18:15:44
阅读次数:
208
1、修饰类:类不能被继承。 2、修饰变量:变量就成了常量,只能被赋值一次。(常量命名规范:如果是一个单词,所有字母大写;如果是多个单词,每个单词都大写,中间用下划线隔开。) 3、修饰方法:方法不能被子类重写。 ...
分类:
编程语言 时间:
2018-12-18 02:33:34
阅读次数:
211
1、父类中私有方法不能被重写。因为父类的私有方法子类根本就无法继承。 2、子类重写父类方法时,访问权限不能更低。最好就一致。 3、父类静态方法,子类也必须通过静态方法进行重写。其实这个算不上方法重写,但是现象确实如此。(静态只能覆盖静态) 4、子类重写父类方法的时候,最好声明一模一样。 ...
分类:
编程语言 时间:
2018-12-17 23:56:33
阅读次数:
278
与Java不同,kotlin 使用冒号,而Java 中使用extends, 注意冒号后面需要调用夫类的构造器。属于单继承,使用open 关键字允许继承class 方法重写 类默认是不可继承的,连方法默认也是不可重写的,如果需要重写方法,就需要在父类中相应的方法上加伤open关键字。而且在子类重写的方 ...
分类:
其他好文 时间:
2018-12-16 14:35:25
阅读次数:
96