(一)Eclipse中的快捷键: 

            ctrl+shift+f自动整理选择的java代码

        alt+/ 生成无参构造器或者提升信息
        alt+shift+s+o 生成带参构造
        ctrl+shift+o快速导入包
        alt+shift+s+r tab+enter-->shift+tab+enter 快速生成get set方法
        ctrl+f11快速运行代码

            说明:快捷键可以快速帮我们生成代码,减少开发的时间,提高效率,记住几个主要的就可以,其他的可以在Eclipse的编辑器中右键鼠标,在弹出的菜单项中选择sourse,在它的子菜单项中选择

(二)Java中数据类型

          Java数据类型分为:基本数据类型和引用类型

        基本数据类型分为:数值型  布尔型  字符型

        引用类型:Class 接口 数组等(除了基本数据类型的都是引用类型)

        

(三 )Java中内存分析 

        1.首先内存分为2大部分:栈(局部变量都在栈里面,空间连续)和堆(new关键字 出来的对象,空间不连续)

 2.堆的话:分为普通的堆(存放new出来的对象)和方法区(类加载器加载到的类的代码,static方法和变量,常量池(字符串常量)等)

        3.首先我们先定义一个简单的类:

 

     说明:People类,有2个属性,一个引用类型String,还有一个基本数据类型int,在构造器中初始化,构造器当然还是有返回值,返回的是这个对象地址,this关键字指向将要实例化的对象,this关键字和super关键字都是类中方法的隐式参数,可以在方法中直接使用,super关键字是指向它的直接父类对象的引用

        4.在类中写一个main方法,程序的入口:

 

         首先类加载器会加载People类还有该类中用到的其他类,存放在堆中的方法区中,People p=new Peolpe();

         

        说明:p是个局部变量存放在栈里面,里面存放的是4个字节的空间地址。new People()表示在堆中以类的模板常见一个对象,由于是无参构造,它的成员变量,引用类型的就为null,基本数据类型的在某种意义下就是0。

        在往下看

        p.name=new String()和p.age=18在内存中的分析

        

        说明:通过p引用找到堆里面的对象,在找到它的String name属性,让它指向在堆中新new出来的字符串对象,而int age属性,是直接存放18这个值,所以说,基本数据类型存值,引用类型存放空间地址,在说一说二位数组,看下面代码

        

        画出一下它的内存图:

        

         说明:首先的话,a指向堆里面的有2个引用属性的对象,然后该对象2个引用属性分别指向另外2个数组,由于二位数组各个项没有赋值,根据是int类型,默认值就为0,如果是引用类型,那么就是null

       5.当然还有方法,在new出来的对象中的普通方法,就是不带static关键字的方法,它也有地址,指向方法区的类代码中的该方法,实现调用,然后该方法中有参数的话,就会在栈中开辟一个空间存放该局部变量,若是基本数据类型的参数,就存放值,若是引用类型数据类型的参数就存放空间地址,然后通过该空间地址来找到它所指向的对象,来进行方法的操作

        6.就是方法区中带static的方法和变量,它们是从属于类的,可以通过类名.直接调用该方法,不依赖对象

        7.就是常量池中的字符串常量:举个例子

       

            说明:”我是字符串“就是在常量池中的字符串常量,画出它的内存分析图

             

            画出内存图就知道了,str1==str2返回值为什么为true,因为它们指向同一个地方,存放的空间地址是一样,所以返回true

       8.关于继承的内存分析图就不画了,其实很简单,在子类的构造器中默认有super()这一行代码,调用父类的构造器,这就是为什么在创建子类对象的时候,会先创建父类对象,如果调用了一个方法,在子类中没有,就会去父类中找,使用属性也是一样

            9.关于引用类型为null,当然不是为空,也是指向堆中的一个内存空间的。

Eclipse中的快捷键快速生成常用代码(例如无参、带参构造,set、get方法),以及Java中重要的内存分析(栈、堆、方法区、常量池)的更多相关文章

  1. sublim text3快速生成html代码时,tab键失效问题

    sublime text3是一款非常强大的文本编辑器,个人觉得做前端的话这款工具很好用.便携,秒启.唯一让我觉得不是特别爽的就是插件啊,都需要自己安装.不过瑕不掩瑜,这款编辑器是很适合开发前端和PHP ...

  2. 使用excel中的数据快速生成sql语句

    在小公司的话,总是会有要开发去导入历史数据(数据从旧系统迁移到新系统上)的时候.这个时候,现场实施或客户会给你一份EXCEL文档,里面包含了一些别的系统上的历史数据,然后就让你导入到现在的系统上面去. ...

  3. Eclipse安装Hibernate插件快速生成配置文件

    Eclipse安装Hibernate插件快速生成配置文件 插件链接: http://pan.baidu.com/s/1mi3KVtI 密码: kmjg 1.安装插件: 1.在eclipse顶部窗口he ...

  4. Android Studio 配置快速生成模板代码

    前言 Android studio 有提供快速生成模板代码的功能,其实这个功能也可以自定义配置.此篇博客将讲解如何使用此功能 进入Settings 选择 Editor > Live Templa ...

  5. VS中的快捷键快速格式化代码,使好看,整齐

    在VC2005中,快捷键是Ctrl + K, Ctrl + F, 这是一个组合键,即先按Ctrl + K, 这时候编辑器会等待下一个按键动作,此时再按Ctrl + F, 即可以格式化代码了,当然,也可 ...

  6. 使用Emmet 快速生成HTML代码

    在前端开发的过程中,一个最繁琐的工作就是写 HTML.CSS 代码.数量繁多的标签.属性.尖括号.标签闭合等,让前端们甚是苦恼.于是,我向大家推荐 Emmet,它提供了一套非常简单的语法规则,书写起来 ...

  7. Intellij IDEA 14中使用MyBatis-generator 自动生成MyBatis代码

    一:项目建立好及其基本的测试好 二:在maven项目的pom.xml 添加mybatis-generator-maven-plugin 插件 <build> <finalName&g ...

  8. Axis2中使用wsdl2java.bat生成客户端代码

    1 准备环境 (1)下载Axis2的zip包axis2-1.5.5-bin.zip,并解压. 官方网址:http://ws.apache.org/axis2/ (2)设置环境变量(我的电脑->属 ...

  9. [2016-07-15]结合命令行工具awk和多行文本编辑器快速生成DataSeed代码

    目标:根据业务提供的两份数据,生成DataSeed代码 SampleDataA 上海 华东一线 上饶 华东四线 中山 华南二线 临汾 华北四线 临沂 华东二线 SampleDataB 上海 1D04E ...

随机推荐

  1. ArcGIS Pro 简明教程(4)工具和模型构建器

    ArcGIS Pro 简明教程(4)工具和模型构建器 by 李远祥 工具箱中的工具 ArcGIS Pro 在1.3版本基本上已经继承了ArcMap的所有工具,而且会不断加入一些它自身才有的工具,例如适 ...

  2. UI进阶 即时通讯之XMPP登录、注册

    1.XMPP环境搭建 http://www.cnblogs.com/fearlessyyp/p/5506644.html 第一次打开可能会有点儿慢,图片很多,步骤很详细,祝搭建成功. 2.工程中添加X ...

  3. Oracle索引语句整理

    转载:http://www.cnblogs.com/djcsch2001/articles/1823459.html 索引,索引的建立.修改.删除 索引索引是关系数据库中用于存放每一条记录的一种对象, ...

  4. Input file 文本框美化

    HTML原生的input file 上传按钮有多(无)不(力)漂(吐)亮(槽)我就不多说了.大家几乎在项目中都会有遇到图片.等文件需要上传的地方,好看的文件上传按钮会使人身心愉悦(我瞎说的).好了不多 ...

  5. 【问题解决】使用自定义控件时,vs停止工作

    问题表现:向页面中添加自定义控件时,vs卡住了,随便点击一下,然后窗口未响应,然后用资源管理器看到内存使用在飙升,监视进程会发现就是vs的进程出现了异常 问题的解决:菜鸟D在网上搜了一下,发现一个奇葩 ...

  6. [Hadoop] - Hadoop3.0.x编译

    这里仅介绍一种Hadoop3.0.x版本的源码编译方式 编译过程 1. 下载源码 2. 安装依赖环境 3. 源码编译 ========================================= ...

  7. Java实现OOP(面向对象编程)

    一.对象的综述 面向对象编程(OOP)具有多方面的吸引力.对管理人员,它实现了更快和更廉价的开发与维护过程.对分析与设计人员,建模处理变得更加简单,能生成清晰.易于维护的设计方案.对程序员,对象模型显 ...

  8. 初探Lambda表达式/Java多核编程【4】Lambda变量捕获

    这周开学,上了两天感觉课好多,学校现在还停水,宿舍网络也还没通,简直爆炸,感觉能静下心看书的时间越来越少了...寒假还有些看过书之后的存货,现在写一点发出来.加上假期两个月左右都过去了书才看了1/7都 ...

  9. Linux 重启命令

    一.Linux 的五个重启命令 1.shutdown 2.poweroff 3.init 4.reboot 5.halt 二.五个重启命令的具体说明 shutdown reboot 在linux下一些 ...

  10. screen printing

    https://www.youtube.com/watch?v=kWKOgHaze0s sample website provide http://midwestsign.com/index.asp ...