Java基础加强笔记

11、Integer i1 = 13;
Integer i1 = 13;
这两个是同一个对象
但赋值的值超过-128~127 就不是同一个对象

享元模式 flyweight 当这个数据很小,但出现的次数较多
可以将其变成一个对象,不同的变成方法的外部属性,相同的叫做内部属性

12、枚举
也是JDK1.5中增加的新特性
当编译不成功的时候编译器就不通过

13、final 和 static 谁在前面都可以
如需打印这个对象,需要从写toString()方法
如果类里面有抽象方法 那么这个类必须是抽象类
采用抽象方法定义nextDay就将大量的if else语句转移成了一个个独立的类

14、枚举自动实现了toString()方法
有他自己的排行方法ordinal

15、枚举也是一个特殊的类
元素列表必须放在其他方法之前,切元素列表最后需要加";"
方法必须是private的
枚举元素后面加()表示创建这个枚举实例对象使用哪个构造方法

16、内部类可以有四个访问修饰符,而外部类只有两个
一个是 默认的friendly 另一个是 public
子类必须完成父类的抽象方法
类的方法返回的可以使自己这个类型
类里面可以定义静态常量 常量指向的结果就是自己这个类的实例对象
如果美剧只有一个成员是,就可以作为一种单例模式

17、反射
框架会用到
Java类用于描述一类事物的共性、该类食物有什么属性,没有什么属性。至于这个属性的值是什么,则是由这个类的实例对象来确定

Java中的类都是同一种事物、这种事物就是Class

Class的实例对象代表内存中的一份字节码
有几份字节码就是几个Class 的实例对象

得到一个类的字节码有两种情况
1、这个类已经加载到内存中了
2、如果没有加载那么就是用类加载器去加载,然后返回类的字节码

得到类的字节码有三种方式
1、System.class
2、.getClass()
3、Class.forName("类名");

数组也是一个类型
Class.isArray()

总之,只要是在源程序中出现的类型,都有各自的Class实例对象如void int[]{}

18、反射:
反射就是把Java类中的各种成分映射成相应的Java类
各个成分所对应的对象,然后就用这个对象干一些事情

19、Constructor类
我们想要的到一个类中所有的构造方法
Constrouctor [] constrouctor = Class.forName("类名").getConstructor;

Construtor constructor1 = String.class.getConstrutor(StringBuffer.class);
String str2 = (String)construtor1.newInstance(new StringBuffer("abc");

调用获得的方法是要用到上面相同的类型的实例对象

反射比较占用资源 导致程序性能下降 需要加载到缓存方便以后使用

Class.newInstance() 该方法内部先得到默认的构造方法,然后用该构造方法实例对象 他用到了缓存机制来保存默认构造方法的实例对象

20、类身上的成员变量也是又一个类来表示Field

要得到一个类身上的某个成员变量先要得到类的字节码,通过字节码可以通过getField()方法来获取
如果该字段为私有的、那么使用getDeclaredField()方法
但还是无法访问需要使用暴力反射field.setAccessible(true);
后就可以访问了

Java基础提高学习笔记2相关推荐

  1. Java基础提高学习笔记1

    Java基础加强笔记 03.开发时有两个阶段,编译时阶段 运行时阶段 工作间可以保存不同用户的不同配置 创建工作间需要关闭现有的工作间,并新建配置 每个类都有包.包要以公司的网址倒置加模块等等 int ...

  2. Java基础篇 学习笔记

    List item Java基础篇 学习笔记 java基础篇 第1章 计算机.程序和java概述 学习笔记 1.1什么是计算机 简单来说:计算机就是 ' 存储 ' 和 ' 处理 ' 数据的电子设备. ...

  3. Java基础知识学习笔记总结

    Java学习笔记总结 java基础复习 1. 抽象类可以有构造器,可以有一个非抽象的父类 2. 垃圾回收机制回收的是堆里面的内存,栈里面的数据自动入栈自动出栈 3. 引用类型的数据在堆当中,内存中操作 ...

  4. 狂神说java java基础篇 学习笔记

    java基础的视频内容笔记都在这了 前言等字数非常长的章节,使用了AI语音识别成文字后修改的,有错漏欢迎提出 面对对象模块的按照自己的理解进行了内容修改,可以对比原视频内容理解,如有建议欢迎提出 前言 ...

  5. Java基础入门--学习笔记

    Java基础入门教程 itheima–java基础小白教程 学习配套软件:eclipse 1.基础知识 (1)常用DOS命令:切换盘–>E:,cd–>进入文件,可多级,cd - --> ...

  6. 【Java基础】学习笔记

    常见的java结构形式汇总 1.Hello,World!(基本形式) //类框架 public class Test{ //程序入口,主方法 这里的args代表的是一个变量名,可变.public st ...

  7. Java基础班学习笔记(8)

    1:如何制作帮助文档(了解) (1)写一个类 (2)加入文档注释 (3)通过javadoc工具生成即可 javadoc -d 目录 -author -version ArrayTool.java 如何 ...

  8. Java基础班学习笔记(13)IO流

    知识要点: 1:异常(理解) (1)程序出现的不正常的情况. (2)异常的体系 Throwable |--Error 严重问题,我们不处理. |--Exception |--RuntimeExcept ...

  9. Java基础班学习笔记(15)GUI图形界面编程

    1:如何让Netbeans的东西Eclipse能访问. 在Eclipse中创建项目,把Netbeans项目的src下的东西给拿过来即可. 注意:修改项目编码为UTF-8 2:GUI(了解) (1)用户 ...

最新文章

  1. 前端面试中常见的算法问题
  2. idea提示,格式化代码,清除不使用的包快捷键,maven自动导jar包
  3. 西北大学调剂计算机,西北大学信息科学与技术学院2020年硕士考研预调剂公告...
  4. 01.00 简单工厂模式
  5. gin 打linux环境包问题解决
  6. OSI参考模型(2)
  7. Linux入门之常用命令(10)软连接 硬链接
  8. AI 人工智能学习之泰勒公式与拉格朗日乘数法
  9. TFT屏(OCM320240T350)调试总结
  10. html文本图片如何排版,【姿势】10种照片的文字排版
  11. cygwin装linux系统,给cygwin安装命令package
  12. 阿里-蚂蚁金服-一面电面-上海-java研发实习生
  13. pandas生成日期去掉时分秒
  14. Amazon SageMaker测评分享,效果超出预期
  15. 为啥有些人开着电视才能睡着?
  16. B模式超声成像仿真(MATLAB k-Wave仿真)
  17. 高考数学知识点:基本不等式(附习题)
  18. java编写一个圆环类Ring_编写一个圆环类ring的java程序
  19. 利用菜单配置文件生成菜单
  20. 金融直播有哪些好处?直播平台有哪些?

热门文章

  1. php-fpm配置文件的优化
  2. [UIKit学习]00.关于前置知识(storyboard,UIViewController,类扩展,项目属性)
  3. PHP获取文件夹内所有文件包括子目录文件的名称或路径
  4. spring mvc tutorial
  5. js高级技巧之函数节流
  6. 使用Typescript开发(二)
  7. 【mysql】MySQL存储IP地址
  8. 黄聪:C#索引器详解、示例
  9. SCCM 2007系列教程之四在工作组环境内实现SCCM客户端
  10. Puppet 笔记 模板