(一)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. (译)AngularJS1.3.0 开发者指南(四) -- 控制器

    理解Controllers 在AngularJS中, Controller是一个Javascript构造函数, 常常被用来扩展 Angular Scope 对象. 控制器通过 ng-controlle ...

  2. ArcGIS制图表达Representation-制图表达介绍

    ArcGIS制图表达技术-制图表达介绍 by 李远祥 在基于GIS数据的制图中,大部分都是使用的数据+符号应用的这种模式.这种模式已经被应用很多年,而且也是非常成熟.对应在ArcGIS体系里面,就是数 ...

  3. express框架介绍

    //引入express模块 var express = require('express'); //调用express方法,接受其返回值(返回值为对象) var app = express(); ap ...

  4. 情人节,教大家使用css画出一朵玫瑰花。

    情人节到了,给大家来一朵高端的玫瑰花. 在网上看到的一个canvas实现的玫瑰花,效果很好,但是代码被压缩过,也没有注释,看的云里雾里的. 今天我教大脚用CSS来实现一朵玫瑰花. 先看效果 首先我们画 ...

  5. Unity编程标准导引-3.3 Transform

    本文为博主原创文章,欢迎转载.请保留博主链接http://blog.csdn.net/andrewfan 每个游戏对象(GameObject),其存在于游戏世界,都有一个位置.朝向.大小等基本定位信息 ...

  6. phpcms 列表项 内容项

    根据上一篇内容继续 首页替换完成后 接下来替换列表页 首先把列表的静态网页放入相应模板的content文件夹下,并改名为 list.html 并且创建栏目时选择下面一项 同样,头尾去掉,利用{temp ...

  7. js DOM操作---登录例子总结

    简单的总结下用 javascript DOM 实现简易登录框例子,下面是简单的模拟登录,没有具体的登录样子,但只是模拟,整理下思路. 页面简单布局,我这个确实太简单了,看代码: <body> ...

  8. HTML学习二

    继续上一次的学习: <html> <head> <title>新增雇员</title> <script language="javasc ...

  9. Mac入门推荐(写给Mac小白)

    本人第一次接触Mac是在2016年10月中旬,那时由于对苹果系统的不熟悉,导致自己一开始的时候用的很不习惯,甚至还想换回Windows系统.总所周知,苹果系统的软件比较少,在此我向大家推荐一些个人觉得 ...

  10. SQL SERVER 事务日志 解析

    1 基本介绍 每个数据库都具有事务日志,用于记录所有事物以及每个事物对数据库所作的操作. 日志的记录形式需要根据数据库的恢复模式来确定,数据库恢复模式有三种: 完整模式,完全记录事物日志,需要定期进行 ...