什么是类: 类=属性+方法

属性来源于状态(以变量的形式存在);方法来源于动作;

*属性对应的是数据,而数据只能存在变量中。

方法内的变量为局部变量;类体中的变量称为成员变量(也称为属性)

java中所有的类都属于引用数据类型。

JVM主要是由方法区,栈区,堆内存区构成,栈的活动是最频繁的,需要压栈和弹栈。堆内存,凡是new运算符创建的对象,都存储在堆内存当中。new运算符的作用救赎在堆内存中开辟一块空间。(对象存储在堆内存当中。)

方法区存代码片段,方法区是最先有数据的,因为类最先被加载。

注意:对于成员变量,没有手动赋值时,系统默认赋值。默认值为各个数据类型的默认缺省值。例如 int 0 long 0L boolean false char \u0000。String null。

实例变量:实例又称对象,则实例变量就是对象级别的变量。每一个对象都有自己的变量值,那么在访问的时候需要以先创建对象后在使用。

局部变量在使用的时候必须要赋初值,成员变量,实例变量要是没赋初值,系统会默认赋值为默认缺省值。

引用:对于变量,保存了对象内存地址的变量被称为引用。引用不一定是局部变量,还有实例变量。

引用是存储对象内存地址的一个变量。 对象是在堆中new出来的。

空指针异常:指找不对对应的内存地址(NullPointerException) 出现空指针异常的前提条件是:“空引用”访问实例相关的数据时,都会出现空指针异常。

java中的GC(garbage Collection)主要针对堆内存中的垃圾数据。。。。。。当没有任何引用指向该对象的时候。。。

java类的学习的更多相关文章

  1. Java 类引入 学习记录规整

    之前觉得声明一个类,再把另一个包内的声明数值用第一个类打印出来就可以了(加入引入包类) 结果发现是不对的 看了看demo  得出正确结果    ImportTest 被运行 引入下面的Import类 ...

  2. Java虚拟机JVM学习07 类的卸载机制

    Java虚拟机JVM学习07 类的卸载机制 类的生命周期 当Sample类被加载.连接和初始化后,它的生命周期就开始了. 当代表Sample类的Class对象不再被引用,即不可触及时,Class对象就 ...

  3. Java虚拟机JVM学习04 类的初始化

    Java虚拟机JVM学习04 类的初始化 类的初始化 在初始化阶段,Java虚拟机执行类的初始化语句,为类的静态变量赋予初始值. 在程序中,静态变量的初始化有两种途径: 1.在静态变量的声明处进行初始 ...

  4. Java虚拟机JVM学习02 类的加载概述

    Java虚拟机JVM学习02 类的加载概述 类的加载 类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对 ...

  5. [Java初探08]__简单学习Java类和对象

    前言 在前面的学习中,我们对面向对象的编程思想有了一个基本的了解,并且简单的了解了类和对象的定义.那么类和对象在Java语言中是如何表现的,这次,就从实际出发,学习一下一下类和对象在Java语言中的使 ...

  6. 【转】Spring学习---Bean配置的三种方式(XML、注解、Java类)介绍与对比

    [原文]https://www.toutiao.com/i6594205115605844493/ Spring学习Bean配置的三种方式(XML.注解.Java类)介绍与对比 本文将详细介绍Spri ...

  7. 【Python】Java程序员学习Python(十)— 类、包和模块

    我觉得学习到现在应该得掌握Python的OOP编程了,但是现在还没有应用到,先留一个坑. 一.类和对象 说到类和对象其实就是在说面向对象编程,学完Java以后我觉得面向对象编程还是很不错的,首先封装了 ...

  8. java reflect 初始学习 动态加载类

    首先要理解Class类: 在java 的反射中,Class.forName("com.lilin.Office") 使用类的全名,这样获取,不仅仅表示了类的类类型,同时还代表着类的 ...

  9. Android(java)学习笔记136:Java类初始化顺序

    Java类中初试化的顺序: 由此得出Java普通类初始化顺序结论: 静态变量 静态初始化块 变量 初始化块 构造器 由此得出Java继承类初始化顺序结论:     1 .继承体系的所有静态成员初始化( ...

随机推荐

  1. datasets数据读取器

    #切分数据集 img_dir = train_parameters['img_dir'] file_name = train_parameters['file_name'] df = pd.read_ ...

  2. SpringMVC的数据响应方式-页面跳转

    1.返回字符串形式 直接返回字符串:此种方式会返回字符串与视图解析器的前后缀拼接后跳转 有关视图解析器的拼接请访问此地址 注意:WEB-INF下的资源一般不能访问,因为转发是服务器的操作所以可以访问到 ...

  3. Spring-JdbcTemplate基本使用

    概述:它是spring提供的一个对象,是对原始繁琐的Jdbc API对象的简单封装,spring框架为我们提供了很多的操作模板类.例如操作关系型数据库JdbcTemplate和HibernateTem ...

  4. What are PCIe Slots

    https://www.hp.com/us-en/shop/tech-takes/what-are-pcie-slots-pc What are PCIe Slots and How Can I Us ...

  5. VirtualBox使用报错

    VirtualBox使用报错 1.启动报错:Failed to instantiate CLSID_VirtualBox... 报错内容: Failed to instantiate CLSID_Vi ...

  6. 汇编语言实验1—Debug基础操作

    1.使用Debug,将下面的程序段写入内存,逐条执行,观察每条指令执行后CPU中相关寄存器中内容的变化. 记录1:最后一条指令执行完BX=(4026)H,AL=(66)H,检验结果. 两种写入:e命令 ...

  7. 你不知道的下划线属性-text-decoration

    大家好,我是半夏,一个刚刚开始写文的沙雕程序员.如果喜欢我的文章,可以关注 点赞 加我微信:frontendpicker,一起学习交流前端,成为更优秀的工程师-关注公众号:搞前端的半夏,了解更多前端知 ...

  8. Go学习-基本语法(一)

    前言 一直对Service Mesh相关内容比较感兴趣,后面一路学习了Dcoker.Kubernetes等相关内容,可以说是对基本概念和使用有一定了解,随着开始学习一些相关的组件的时候,发现基本上全部 ...

  9. Bugku CTF练习题---加密---ok

    Bugku CTF练习题---加密---ok flag:flag{ok-ctf-1234-admin} 解题步骤: 1.观察题目,发现规律 2.发现所有内容都是ook写的, 直接上网搜索一下原因,发现 ...

  10. 继承 & super & 方法覆盖

    简单继承 细节1: 细节2: 子类创建对象,先 父类构造器,后 子类的构造器,因为(默认的super) 细节3: 假设父类只有一个有参构造器,  此时需要子类用上super给定父类参数,才能通过编译 ...