Java 面向对象—杂项(方法不能重写,修饰符,变量)
一、哪些方法不能被重写?
1、final 修饰的不能重写
2、static 修饰的不能重写
3、private 修饰的,因为私有的在子类中不可见
4、如果跨包的话,修饰符缺省的也不能被重写,因为缺省的跨包不可见
二、修饰符
1、修饰外部类
权限修饰符:public 和 缺省的
其他修饰符:final
2、方法
权限修饰符:四种
其他修饰符:final、static、native
3、成员变量
权限修饰符:四种
其他修饰符:final、static
4、代码块
修饰符:static 或 没有
三、变量
1、变量的分类
(1)成员变量
① 类变量:静态的成员变量
② 实例变量:非静态的成员变量
(2)实例变量
2、变量的区别
(1)声明的位置
成员变量:类中方法外
局部变量:
① 方法()中形参列表
② 方法体{}中局部变量
③ 代码块中局部变量
(2)在内存中存储的位置
成员变量:
① 类变量:方法区
② 实例变量:堆
局部变量:
栈:
① 虚拟机栈:非 native 方法的局部变量
② 本地方法栈:native 方法的局部变量
(3)默认值
成员变量:如果没有赋值,会有默认值
局部变量:没有默认值,必须定义,赋值,才能使用
(4)修饰符
成员变量: 四种权限修饰符;static,final
局部变量:final
(5)生命周期
成员变量:
① 类变量:随着类的加载而分配空间,随着类的卸载而消亡,每个对象都是共享的
② 实例变量:随着对象的创建而分配空间,随着对象被垃圾回收而回收,每个对象是独立的
局部变量:方法调用时,在栈中分配空间,方法调用结束就消亡
(6)作用域
成员变量:
① 类变量:在本类中可以随便使用;在其他类中,用“类名.” 或 “对象.” 使用。
② 实例变量:在本类中除了静态成员不能使用,其他都可以使用;在其他类中,用“对象.” 使用。
局部变量:有作用域,超过作用域就不能使用了
Java 面向对象—杂项(方法不能重写,修饰符,变量)的更多相关文章
- Java 面向对象(八) 权限修饰符 和 final、native 关键字
一.权限修饰符 1.概述 在 Java 中提供了四种访问权限,使用不同的访问权限修饰符修饰时,被修饰的内容会有不同的访问权限: public:公共的: protected:受保护的: default: ...
- java面向对象之关键字,权限修饰符
1.关键字:this,static,package,importthis:1.表示对当前对象的引用!2.表示用类的成员变量,而非函数参数,注意在函数参数和成员变量同名是进行区分!其实这是第一种用法的特 ...
- 【译文】 C#面向对象的基本概念 (Basic C# OOP Concept) 第一部分(类,对象,变量,方法,访问修饰符)
译文出处:http://www.codeproject.com/Articles/838365/Basic-Csharp-OOP-Concept 相关文档:http://files.cnblogs.c ...
- java接口中成员变量和方法的默认修饰符(转)
Java的interface中,成员变量的默认修饰符为:public static final 所以我们在interface中定义成员变量的时候,可以 1:public static final St ...
- java中方法的控制修饰符也分为:可访问控制符和非访问控制符两类。
3 .方法的控制修饰符也分为:可访问控制符和非访问控制符两类. 可访问控制符有 4 种:公共访问控制符: public :私有访问控制符: private :保护访问控制符: protected :私 ...
- Java语言中有4种访问修饰符
转载:http://wuhaidong.iteye.com/blog/851754 Java语言中有4种访问修饰符 在Java语言中有4中访问修饰符:package(默认).private.publi ...
- Java语言中的访问权限修饰符
一个Java应用有很多类,但是有些类,并不希望被其他类使用.每个类中都有数据成员和方法成员,但是并不是每个数据和方法,都允许在其他类中调用.如何能做到访问控制呢?就需要使用访问权限修饰符. Java语 ...
- Python_day8_面向对象(多态、成员修饰符、类中特殊方法、对象边缘知识)、异常处理之篇
一.面向对象之多态 1.多态:简而言子就是多种形态或多种类型 python中不支持多态也用不到多态,多态的概念是应用与java/C#中指定传参的数据类型, java多态传参:必须是传参数的数据类型或传 ...
- Java面向对象10——方法重写
方法重写 static : package oop.demon01.demon05; public class Application { public static void ...
随机推荐
- OpenCV 学习笔记(15)openc解帧视频
1 修改读取视频的地址 2 修改保存图片序列的路径 String videopath = "F:/dongdong/0tool/3D/2模型/相机阵列/1_12cam亿级相机/数据/giga ...
- postman使用--Monitor
前戏 现在我们已经能完成接口的批量执行,添加断言,数据驱动,设置变量等等方法.但是有一天,用户反应说我们的网站访问不了了.这时候,那帮程序猿查日志的查日志,看数据库的看数据库,找到原因在发布到线上已经 ...
- springmvc,controller层在接收浏览器url传来的参数带中文乱码问题。
请求地址:http://localhost:8080/saveFlashSale?fsRemark=哈哈哈哈哈 接收方法:@RequestMapping("/saveFlashSale&qu ...
- HttpClient代理IP及设置连接读取超时
1.不废话,上代码: public static void main(String[] args) throws Exception { CloseableHttpClient httpClient ...
- [技术博客]升级 API 面临的问题
升级 API 面临的问题 我们使用的上一届的版本中,使用的底层的 安卓的 API 是 Android7.0 .在这一版本中,我们将 API进行了升级,为了更好的兼容新功能.(发送通知),我们在升级 A ...
- python发展
python的创始人---吉多·范罗苏姆(Guido van Rossum)
- Kafka Offset Monitor页面显示空白
下载包:https://github.com/Morningstar/kafka-offset-monitor.git 解决:jar包内\KafkaOffsetMonitor-assembly-0.2 ...
- 64位Winows2008下连接Access数据库 Jet4.0不支持解决代替方案
如何在windows2008 64位的机子上连接Access数据库 用以前的连接Access数据库的方式Provider=Microsoft.Jet.OLEDB.4.0在32位机子上可以使用,在64位 ...
- 深入理解JVM-类加载初始化阶段-类的主动与被动引用
JVM的类加载阶段中初始化阶段 P210 虚拟机规定的五种情况必须对类的“初始化”情况 1.遇到new.getstatic.putstatic.或invokestic 四条字节码指令时,如果类没有经过 ...
- BitSet源码
public class BitSet1 implements Cloneable, java.io.Serializable { // >>>左边补0, << 右边补0 ...