Java覆盖和隐藏 (1) 变量只能被隐藏(包括静态和非静态),不能被覆盖: (2) 可以用子类的静态变量隐藏父类的静态变量,也可以用子类的非静态变量隐藏父类的静态变量,也可以用非最终变量(final)隐藏父类中的最终变量: (3) 静态属性(static)和静态方法(static)可以被继承,但是不能被重写.被覆盖(@Override)而是被隐藏: (4) 非静态方法可以被覆盖: (5) 不能用子类的静态方法隐藏父类中的非静态方法,否则编译会报错: (6) 不能用子类的非静态方法覆盖父类的静态…
谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字.另外,Java中的String类就是一个final类,那么今天我们就来了解final这个关键字的用法. 一.final关键字的基本用法 在Java中,final关键字可以用来修饰类.方法和变量(包括成员变量和局部变量).下面就从这三个方面来了解一下final关键字的基本用法. 1.修饰类   当用final修饰一个类时,表明这个类不能被继承.也就是说,如果一个类你永远不会让他被继承,就可以用final…
Java中的内存处理机制和final.static.final static总结   装载自:http://blog.csdn.net/wqthaha/article/details/20923579 Java程序运行在JVM上,可以把JVM理解成Java程序和操作系统之间的桥梁,JVM实现了Java的平台无关性,由此可见JVM的重要性.所以在学习Java内存分配原理的时候一定要牢记这一切都是在JVM中进行的,JVM是内存分配原理的基础与前提.         一个完整的Java程序运行过程会涉…
我们知道,在JAVA中,子类可以继承父类,如果子类声明的方法与父类有重名的情况怎么办,大伙儿都知道要是重写,但是实际上这又分为两种情况,就是方法和变量在继承时的覆盖和隐藏问题,这些概念性的东西看似无聊,但是在面试或者是SCJP认证题中围绕这些是会经常碰到的,所以这里来讨论下 首先我们来看几个概念 类变量:又叫静态变量,这种变量属于类,通过类名就可以访问类变量. 实例变量:属于类的实例,即对象,通过对象可以访问实例变量,但是不能通过类名访问实例变量. 静态方法:通过类名访问. 实例方法:对象访问,…
出处:http://renyanwei.iteye.com/blog/258304 我们知道,在JAVA中,子类可以继承父类,如果子类声明的方法与父类有重名的情况怎么办,大伙儿都知道要是重写,但是实际上这又分为两种 情况,就是方法和变量在继承时的覆盖和隐藏问题,这些概念性的东西看似无聊,但是在面试或者是SCJP认证题中围绕这些是会经常碰到的,所以这里来讨论下 首先我们来看几个概念 隐藏 :child隐藏了parent的变量和方法,那么,child不能访问parent被隐藏的变量或者方法,但是,讲…
1.public:public表明该数据成员.成员函数是对所有用户开放的,所有用户都可以直接进行调用 2.private:private表示私有,私有的意思就是除了class自己之外,任何人都不可以直接使用,私有财产神圣不可侵犯嘛,即便是子女,朋友,都不可以使用. 3.protected:protected对于子女.朋友来说,就是public的,可以自由使用,没有任何限制,而对于其他的外部class,protected就变成private. 作用域 当前类 同一package 子孙类 其他pac…
C++类中覆盖与隐藏一直是一个容易理解出错的地方,接下来我就详细讲解一下区别在何处 覆盖指的是子类覆盖父类函数(被覆盖),特征是: 1.分别位于子类和父类中 2.函数名字与参数都相同 3.父类的函数是虚函数(virtual) 隐藏指的是子类隐藏了父类的函数(还存在),具有以下特征: 子类的函数与父类的名称相同,但是参数不同,父类函数被隐藏 子类函数与父类函数的名称相同,参数也相同,但是父类函数没有virtual,父类函数被隐藏 class father { public: void show1(…
一.回顾 1.类和对象的区别 2.UML(uniform makeup language) 3.方法区存储静态变量.常量(static final修饰) 4.堆内存中存储对象 5.栈存储变量 6.this()可用于构造方法第一行 7.static静态语句块(JVM中第一次使用类的时候,会进行加载静态语句块),还可以修饰变量和方法 8.设计模式是可以重复利用的解决方案可以分为四类 9.类的继承(单继承) 10.方法覆盖(相同修饰符,相同方法名,相同参数) 11.多态,子类->父类(向上转型 父类-…
大家好,乐字节的小乐又来了,上一篇是:乐字节Java|JavaBean.继承与权限修饰,也是属于Java继承的,今天继续Java继承. 一. 方法的重写 父类不满足子类的要求,按需改写.注意 方法签名必须相同 在子类中可以根据需要对从基类中继承来的方法进行重写. 重写方法必须和被重写方法具有相同的方法名称.参数列表和返回类型. 重写方法不能使用比被重写方法更严格的访问权限 Override.java Overload.java “==”:方法名.形参列表相同. “≤”:返回值类型(基本类型必须相…
本文主要介绍了final关键字的基本使用方法及原理 final关键字可以修饰类.方法和引用. 修饰类,该类不能被继承.并且这个类的对象在堆中分配内存后地址不可变. 修饰方法,方法不能被子类重写. 修饰引用,引用无法改变,对于基本类型,无法修改值,对于引用,虽然不能修改地址值,但是可以对指向对象的内部进行修改. 比如char[0] = 'a'.不改变对象内存地址,只改变了值. 具体看一下下面的栗子: final class Fi { int a; final int b = 0; Integer…