今天来说一下JAVA中的修饰符和类的加裁机制。
首先来说一下修饰符吧就说几个面试常遇到的吧。
1、static修饰符:
static定义的是为整个类共有的一块存储区域。
1)当它修饰类的属性时,这个属性被称为类变量,为一个类共享的变量,它属于整个类。
可以直接通过类名来访问它。
2)修饰方法称为表态方法
可以直接通过类名来访问本方法。
但要注意的是:在本方法中只能访问其它的static成员,不能访问非static成员。但是在非static方法即可以访问非static的又可以访问static的成员。在static方法中不能出现this关键字。在重写上如果父类的方法是static的那么在子类中不可以将其重写为非static的。同样如果父类的方法是非static的那么在子类中也不可以将其重写为static的。也就是static的方法可以被重写,但是没有多态。
3)用static来修饰一段代码称为静态代码块
在这里要注意的是(1)被修饰的代码块是在类中的,而不是在方法中。
(2)静态的代码块只在类被加裁时执行一次,只后不会再被执行。
2、final修饰符:
1)修饰变量:叫作常量。修饰实例变量叫作实例常量。
(1)当修饰实例变量时,实例变量不会自动初始化为0。
(2)对于实例常量的赋值只有两次机会,一次是在初始化属性时,一次是调用构造方法时
(3)常和static、public配合来修饰一个实例常量
(4)修饰局部变量称为局部常量,修饰静态变量称为静态常量
(5)如果修饰方法那么该方法不会被重写。
(6)如果修饰类那么该类不能被继承。
3、abstract修饰符
1)修饰类被称为抽象类,那么该类不能被实例化但可以有构造方法,可以被继承。可以大其它类中声明一个该类的引用,只能做为编译时类型,不能做为运行时类型。
2)可以修饰方法
要记住:abstract不能和private、static、final同时出现。
4)interface(接口)
1)在接口中所有的方法都是public abstract的。
2)在接口中所有属性都是public static final的
3)接口可以实现多继承,接口可以继承接口
4)在接口中没有构造方法,不能实例化,但可以声明一个接口的引用
再来说一下类的加载机制
1、在虚拟机的生命周期中一个类只被加裁一次
2、加载的原则是:延迟加载
3、类加载的时机
1)当第一次创建对象时要加载
2)调用static方法时要加裁,访问static属性时要加裁,调用static代码块时要加载
3)当加载子类时会先加裁父类
4)创建对象引用时不加裁类
5)子类调用父类的static方法时会加裁
在这里要注意的是:当子类没有重写父类的static方法时,只加裁父类不加裁子类。当子类重写了父类的静态方法时既加裁父类又加裁子类。
6)访问static常量时,如果编译器在以计算出常量的值可以不加裁类,否则会加裁。
7)用Class.forName(类名)来显示的加载一个类
分享到:
相关推荐
良葛格Java学习笔记,html版本,内容还可以,希望初学者可以有用。
Java学习资料 java se JAVA基础学习笔记和演示案例代码项目
《Java JDK7学习笔记》针对java se 7新功能全面改版,无论是章节架构或范例程序代码,都做了重新编写与全面翻新。并详细介绍了jvm、jre、java se api、jdk与ide之间的对照关系。必要时从java se api的源代码分析,...
收集的java李兴华老师的课件笔记。感觉还不错,适合回顾和新手补习。
mldn 李兴华老师的笔记 2009年java核心讲解
NULL 博文链接:https://hwhanwan.iteye.com/blog/1717997
《Java JDK7学习笔记》针对java se 7新功能全面改版,无论是章节架构或范例程序代码,都做了重新编写与全面翻新。并详细介绍了jvm、jre、java se api、jdk与ide之间的对照关系。必要时从java se api的源代码分析,...
《Java JDK6学习笔记》是作者良葛格本人近几年来学习Java的心得笔记,结构按照作者的学习脉络依次展开,从什么是Java、如何配置Java开发环境、基本的Java语法到程序流程控制、管理类文件、异常处理、枚举类型、泛型...
java学习笔记大全:java内容介绍 java编程可以分成三个方向: 1、java se (j2se)桌面开发 java中的基础中的基础 2、java ee (j2ee)web开发 3、java me (j2me)手机开发 java se课程介绍 java面向对象编程(基础) java...
张龙 java se课程笔记 java学习者的经典必看笔记
java jdk 学习笔记java jdk 学习笔记java jdk 学习笔记
该资源为个人学习笔记,(包含学习中个人觉得易混淆的,难理解的,某些便于理解的内存直观图,知识点的对比等),有部分没整理出来 。 本人菜鸟 。该资源仅供se初学者,高手莫笑 。
公司几位高手一起总结的一份JAVA SE的笔记.总结的很精练,新手可当学习向导查阅,达人可当工具手册使用.真是练习JAVA,杀人必备的好文档!
●本书是作者多年来教学实践经验的总结,汇集了学员在学习课程或认证考试中遇到的概念、操作、应用等问题及解决方案, ●针对Java SE 8新功能全面改版,无论是章节架构或范例程序代码,都做了重新编写与全面翻新, ●...
传智播客Java_SE基础毕向东老师全程笔记.pdf
java学习笔记,主要是基础部分
从java历程开始到javaSE出道,涉猎到了javaSE所有的知识点,里面不仅有知识点笔记还有练习源码例子以及相关资料和PPT等。非常实用值得你拥有
《java jdk 7学习笔记》针对java se 7新功能全面改版,无论是章节架构或范例程序代码,都做了重新编写与全面翻新。并详细介绍了jvm、jre、java se api、jdk与ide之间的对照关系。必要时从java se api的源代码分析,...
1、JAVA SE 2、MySQL + JDBC 3、JAVA WEB 4、Mybatis 5、SSM 6、大前端 7、Vue 8、SpringBoot 9、Spring Security 10、Shiro 11、Spring Cloud 12、JVM 13、JUC 14、Git 15、Linux 16、Redis 17、ElasticSearch 18、...
1.Java_SE基础全程学习笔记.pdf 2.Java开发工作经验高级特性总结.pdf 3.Java数据结构笔记.pdf 4.Java学员总结笔记.pdf