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构造器级简单内存分析的更多相关文章

  1. Java运行原理及内存分析

    Java运行原理及内存分析 一.Java运行原理 二.Java内存分析

  2. Java程序开发中的简单内存分析

    首先说明内存总体分为了4个部分, 包括 1.stack segment (栈区存储基本数据类型的局部变量,对象的引用名) 2.heap segment(堆区,一般用于存储java中new 出来的对象) ...

  3. Java创建对象时的简单内存分析

    简单创建对象的内存分析 主程序: 1 public class Application { 2 public static void main(String[] args) { 3 Animal do ...

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

    (一)Eclipse中的快捷键:  ctrl+shift+f自动整理选择的java代码 alt+/ 生成无参构造器或者提升信息 alt+shift+s+o 生成带参构造 ctrl+shift+o快速导 ...

  5. Java面向对象_对象内存分析—值传递和引用传递

    对象内存分析,我一直学的比较模糊,今天抽空整理一下,希望能理清. 先说一下,内存分析从何而来,这对于我们这些刚接触java的人来说都比较模糊,就从new关键字说起吧. new关键字表示创建一个对象或者 ...

  6. Java数组(基本+内存分析)

    一.数组概念   数组即为多个相同数据类型数据的数据按一定顺序排列的集合. 二.数组的特点   1.数组有数组名.索引.元素.素组长度:   2.数组的元素可以是基本数据类型也可以是引用数据类型:   ...

  7. Java的引用类型的内存分析

    一. jdk的内存:jdk的bin目录常见命令 1. javac.exe:编译java源代码的,生成java字节码文件(*.class) 2. java.exe:启动一个jvm,来运行指定class字 ...

  8. java基础知识回顾之---java String final类 容易混淆的java String常量池内存分析

    /** *   栈(Stack) :存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放  在常量池中). 堆(heap):存 ...

  9. java堆转储与内存分析

    jmap -dump:format=b,file=dumpfile.hprof pid       将进程的堆转储到dumpfile.hprof文件里 jmap -heap pid  查看堆内存占用情 ...

随机推荐

  1. STL----vector注意事项

    开vector时要注意内存容易炸 最好的办法就是在开vector之后,对他进行一步操作 vector<int> a; a.resize(n); n就是你要开的数组的大小,此时数组里已经插入 ...

  2. 浅析C++的函数式编程

    前言 Java8在Java中通过lambda表达式.Stream API引入了函数式编程,那么C++中是否也支持函数式编程呢?答案是肯定的.目前关于C++进行函数式编程的语法探究的相关博客.文章并不多 ...

  3. mycat高可用-安全管理-监控 看这一篇就够了

    ​ 在之前的操作中,我们已经实现了mysql机器的高可用,可以动态切换master,那么如果mycat崩溃了呢?我们应该如何处理呢?所以此时就需要搭建mycat的高可用集群了. ​ 在mycat的权威 ...

  4. Linux下Rsyslog日志远程集中式管理

    Rsyslog简介 Rsyslog的全称是 rocket-fast system for log,它提供了高性能,高安全功能和模块化设计.rsyslog能够接受从各种各样的来源,将其输入,输出的结果到 ...

  5. php反序列化-unserialize3

    目录 unserialize3-php反序列化 unserialize3 unserialize3-php反序列化 unserialize3 环境地址:https://adworld.xctf.org ...

  6. 重新整理 .net core 实践篇————重定向攻击[三十九]

    前言 简单介绍一下重定向攻击. 正文 攻击思路: 看着上面挺复杂的,其实是一些很简单的步骤. 攻击者通过某些手段,让用户打开了一个好站点,打开的这个地址里面带有重定向信息,重定向信息就是自己伪造的站点 ...

  7. yum安装GitLab-v11.11.8(git私服)

    GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务.(跟github.gitee类似) 1. 安装依赖软件 $ yum -y install ...

  8. nohup &的用法、进程查看以及终止

    p.p1 { margin: 0 0 2px; font: 16px ".PingFang SC" } p.p2 { margin: 0; font: 12px "Hel ...

  9. 15 shell for循环

    除了 while 循环和 until 循环,Shell 脚本中还有for 循环,for 循环有两种使用形式:C语言风格的for循环与Python语言风格的for in循环,两种形式的for循环用法对比 ...

  10. Linux平台安装MongoDB(转)

      一.下载完安装包,并解压 tgz(以下演示的是 64 位 Linux上的安装) . curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x ...