每天开心一点


Java对象的向上转型和向下转型问题
Java 转型问题其实并不复杂,只要记住一句话:"父类引用指向子类对象"。什么叫父类引用指向子类对象?从 2 个名词开始说起:向上转型(upcasting) 、向下转型(downcasting)。举个例子:有2个类,Father 是父类,Son 类继承自 Father。第 1 个例子:Father f1 = new Son();   // 这就叫 upcas...
720    2019-11-20
Java中方法的重写与成员变量的隐藏
这篇文章讨论了Java面向对象概念中一个基本的概念–Field Hiding(隐藏成员变量)在讨论这个问题之前,我们看一段特别特别简单的代码,请问一下方法的数据结果是什么?/**  * @author Hollis 17/9/27.  */  public class FieldOv...
660    2019-11-19
Java方法的覆盖与隐藏的区别分析
本篇文章介绍了,关于Java方法的覆盖与隐藏的区别分析。需要的朋友参考下关于隐藏和覆盖的区别,要提到RTTI(run-time type identification)(运行期类型检查),也就是运行期的多态,当一个父类引用指向子类对象的时候,请看下面我编写的一段代码:代码如下:  class Animal {    ...
637    2019-11-19
关于java中构造函数的一些知识详解
java的构造函数是一个非常重要的作用,首先java里的构造函数是可以重载的,而且因为也是可以继承在父类的构造函数,所以在子类里,首先必然是调用父类的构造函数。可以看下面的两个例子来对比:public class Test{  public static void main(String args[])  {&n...
645    2019-11-19
Java 重载、重写、构造函数的实例详解
Java 重载、重写、构造函数的实例详解方法重写1、重写只能出现在继承关系之中。当一个类继承它的父类方法时,都有机会重写该父类的方法。一个特例是父类的方法被标识为final。重写的主要优点是能够定义某个子类型特有的行为。2、对于从父类继承来的抽象方法,要么在子类用重写的方式设计该方法,要么把子类也标识为抽象的。所以抽象方法可以说是必须要被重写的方法。3、重写的意义。重写方法可以实现多态,用父类的引...
598    2019-11-19
JAVA 构造函数及其重载
public class Student{  public int stuId;  public String stuName;  public int stuAge;  public int stuScore;public Student(){}public Student(int sId,String sName){stuId = sId;sName =...
605    2019-11-19
Java中静态代码块、构造代码块、构造函数、普通代码块
 在Java中,静态代码块、构造代码块、构造函数、普通代码块的执行顺序是一个笔试的考点,通过这篇文章希望大家能彻底了解它们之间的执行顺序。1、静态代码块2、构造代码块3、构造函数 4、普通代码块  普通代码块和构造代码块的区别是,构造代码块是在类中定义的,而普通代码块是在方法体中定义的。且普通代码块的执行顺序和书写顺序一致。5、执行顺序  静态代码块>构造代码块>构...
582    2019-11-19
Java构造函数的深入理解
1. 构造方法的作用:构造方法作用:1).创建对象,凡是必须和new一起使用.2).对对象进行初始化.2. 构造函数与普通函数的区别: (1). 一般函数是用于定义对象应该具备的功能。而构造函数定义的是,对象在调用功能之前,在建立时,应该具备的一些内容。也就是对象的初始化内容。(2). 构造函数是在对象建立时由 jvm 调用, 给对象初始...
578    2019-11-19
Java 中 this 和 super 的用法总结
thisthis 是自身的一个对象,代表对象本身,可以理解为:指向对象本身的一个指针。this 的用法在 Java 中大体可以分为3种:1.普通的直接引用这种就不用讲了,this 相当于是指向当前对象本身。2.形参与成员名字重名,用 this 来区分:3.引用构造函数这个和 super 放在一起讲,见下面。supersuper 可以理解为是指向自己超(父)类对象的一个指针,而这个超类指的是离自己最...
606    2019-11-19
Java继承extends,获取父类私有属性的两种方法
Java中继承是单继承,只有一个父类,可以有多个子类。子类在继承父类的属性和方法的时候可以扩展自己的属性和方法。继承父类的时候,父类必须有一个无参构造。子类构造的时候会默认通过super()来调用父类的构造方法。初始化子类的时候,先调用父类的默认构造,再调用子类的构造。调用父类的属性或方法可以通过super关键字。在调用子类的方法时会先在子类中寻找那个方法,找到后调用成功,否则再去父类中找想要调用...
640    2019-11-19