java构造器级简单内存分析
java构造器的使用(基础篇)
构造方法也叫构造器,是创建对象时执行的特殊方法,一般用于初始化新对象的属性。
基本定义语法:
访问控制符 构造方法名(【参数列表】){
方法体
}
注:"访问控制符”需使用public,因为构造方法主要是提供给其他类使用
2.构造方法名必须和类名相同,要注意大小写。
3.构造方法可以带参数(有参构造),也可以不带参数(无参构造)。
4.构造方法不显示声明返回类型,也不能使用void。
构造方法也可以重载与普通方法的重载相同。
一个对象只能调用一次构造方法,当使用关键字new时,才能调用构造方法。
简单代码示例:
package oop;
public class Person01 {
//一个类即使什么都不写,他也会存在一个方法;
//显示的定义构造器
String name;
int age;
//1.在使用new关键词时,本质还是在调用构造器
//2.可以用来初始化值。
//3.在使用有参构造时,无参构造必须存在。
public Person01(){
this.name ="shenjingbing";//无参构造
}
// public Person01(int age) { //有参构造
// this.age = age;
// }
public Person01(String name){
this.name = name;
}
public Person01(String name,int age){
this.name= name;
this.age= age;
}
}
对上面的构造方法进行调用
package oop1;
import oop.Person01;
public class Application01 {
public static void main(String[] args) {
Person01 person01 = new Person01();
System.out.println(person01.name);
}
}
我们可以使用alt+insert快捷键,生成构造方法(在IDEA编译器下)
java创建对象内存简单分析
示例代码:
package oop1;
//方法
public class Pet {
public String name;
public int age;
public void shout(){
System.out.println("交流一下");
}
}
//选择测试类进行调用,实例化
/* package oop1;
public class Application01 {
public static void main(String[] args) {
Pet dog = new Pet();
dog.name = "旺旺";
dog.age = 3;
dog.shout();
System.out.println(dog.name);
System.out.println(dog.age);
}
}*/
可见视频狂神说java
java构造器级简单内存分析的更多相关文章
- Java运行原理及内存分析
Java运行原理及内存分析 一.Java运行原理 二.Java内存分析
- Java程序开发中的简单内存分析
首先说明内存总体分为了4个部分, 包括 1.stack segment (栈区存储基本数据类型的局部变量,对象的引用名) 2.heap segment(堆区,一般用于存储java中new 出来的对象) ...
- Java创建对象时的简单内存分析
简单创建对象的内存分析 主程序: 1 public class Application { 2 public static void main(String[] args) { 3 Animal do ...
- Eclipse中的快捷键快速生成常用代码(例如无参、带参构造,set、get方法),以及Java中重要的内存分析(栈、堆、方法区、常量池)
(一)Eclipse中的快捷键: ctrl+shift+f自动整理选择的java代码 alt+/ 生成无参构造器或者提升信息 alt+shift+s+o 生成带参构造 ctrl+shift+o快速导 ...
- Java面向对象_对象内存分析—值传递和引用传递
对象内存分析,我一直学的比较模糊,今天抽空整理一下,希望能理清. 先说一下,内存分析从何而来,这对于我们这些刚接触java的人来说都比较模糊,就从new关键字说起吧. new关键字表示创建一个对象或者 ...
- Java数组(基本+内存分析)
一.数组概念 数组即为多个相同数据类型数据的数据按一定顺序排列的集合. 二.数组的特点 1.数组有数组名.索引.元素.素组长度: 2.数组的元素可以是基本数据类型也可以是引用数据类型: ...
- Java的引用类型的内存分析
一. jdk的内存:jdk的bin目录常见命令 1. javac.exe:编译java源代码的,生成java字节码文件(*.class) 2. java.exe:启动一个jvm,来运行指定class字 ...
- java基础知识回顾之---java String final类 容易混淆的java String常量池内存分析
/** * 栈(Stack) :存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放 在常量池中). 堆(heap):存 ...
- java堆转储与内存分析
jmap -dump:format=b,file=dumpfile.hprof pid 将进程的堆转储到dumpfile.hprof文件里 jmap -heap pid 查看堆内存占用情 ...
随机推荐
- 从0到1用react+antd+redux搭建一个开箱即用的企业级管理后台系列(基础篇)
背景 最近因为要做一个新的管理后台项目,新公司大部分是用vue写的,技术栈这块也是想切到react上面来,所以,这次从0到1重新搭建一个react项目架子,需要考虑的东西的很多,包括目录结构.代码 ...
- vue 快速入门 系列 —— vue loader 上
其他章节请看: vue 快速入门 系列 vue loader 上 通过前面"webpack 系列"的学习,我们知道如何用 webpack 实现一个不成熟的脚手架,比如提供开发环境和 ...
- 《手把手教你》系列技巧篇(六)-java+ selenium自动化测试-阅读selenium源码(详细教程)
1.简介 前面几篇基础系列文章,足够你迈进了Selenium门槛,再不济你也至少知道如何写你第一个基于Java的Selenium自动化测试脚本.接下来宏哥介绍Selenium技巧篇,主要是介绍一些常用 ...
- Qt 新手实战项目之手把手打造一个串口助手
一前景 很多时候我们在学习一门新的语言,一直在学习各种语法和记住各种关键字,很容易产生枯燥的情绪,感觉学习这些玩意儿不知道用在什么地方,心里很是苦恼,这不,我在这记录下我学习Qt的第一个的小项目-串口 ...
- margin属性总结,你想知道的这里都有
一.前言 在学习CSS时,遇到的很多问题都是和margin有关,这个小怪兽总是出其不意的让我的界面排版变的混乱,还让人摸不着头脑,原因还是在于我对他的一些属性没有进行一个深入的了解,导致我在设计之初就 ...
- Docker安装MySQL8.0
环境 CentOS 7.5 Docker 1.13.1 MySQL 8.0.16 安装 拉取镜像 默认拉取最新版本的镜像 $ docker pull mysql 如果要指定版本,使用下面的命令 $ d ...
- 修改myeclipse 项目中用的jdk版本
修改myeclipse 项目中用的jdk版本 首先, 打开MyEclipse,如下图所示 打开之后,找到我们的java项目 右键--"Build Path--->Confirgure ...
- Window server 2016 搭建Java Web环境
系统下载 下载种子(迅雷下载): ed2k://|file|cn_windows_server_2016_updated_feb_2018_x64_dvd_11636703.iso|629426585 ...
- Java | 变量 & 常量
变量 Java是一种强类型语言,每个变量都必须声明其数据类型,变量本质上就是代表一个"可操作的存储的空间",在定义之后空间位置是确定的,但是里面放置什么值是不确定的,我们操作的时候 ...
- 「AGC021E」Ball Eat Chameleons
「AGC021E」Ball Eat Chameleons 考虑如何判定一个合法的颜色序列. 不妨设颜色序列中有 \(R\) 个红球,\(B\) 个蓝球,所以有 \(R+B=k\). 考虑分情况讨论: ...