java中System.out.println()打印输出结果
疑点:syso()是打印输出语句,打印的是什么?
syso()不同情况下打印输出的结果不一样:
1.
package com.briup;
public class Syso {
public static void main(String[] args) {
int i = 1;
System.out.println(i);
}
}
结果为:1
2.
public class Syso {
public static void main(String[] args) {
//int i = 1;
//System.out.println(i);
int[] arr = new int[10];
System.out.println(arr);
System.out.println(arr[0]);
}
}
结果为:[I@15db9742
0
3.
public class Syso {
public static void main(String[] args) {
//int i = 1;
//System.out.println(i);
//int[] arr = new int[10];
//System.out.println(arr);
//System.out.println(arr[0]);
Syso ss = new Syso();
System.out.println(ss);
System.out.println(ss.age);
ss.age = 10;
System.out.println(ss.age);
}
private int age;
//无参构造器
public Syso() {
super();
// TODO Auto-generated constructor stub
}
public Syso(int age) {
this.age = age;
}
}
结果为 :com.briup.Syso@15db9742
0
10
首先明确 jvm运存内存分配,通俗一点就是堆,栈,方法区,常量区这几个概念,以及它们之间的联系,变量 和 方法 在jvm 中是怎么被调用的
其次简单一点的理解syso() ,我们只要单纯的把它看做一种打印输出的固定形式,不需要去深入了解它在 jvm 中的内存分配 和 及调用
明白为什么会存在地址值,java里面的地址类似与C中的指针,但又有所不一样。地址值可以看做是栈 和 堆 之间的纽带!如果变量只是在栈空间被赋值和调用,那么就不存在地址值的概念
(1)中,int i = 1 可以被分解为三个流程 第一,在栈空间内开辟 类型的int 的 空间 ,空间名为i ;第二,栈空间内为数字1开辟一块空间 ;第三。赋值操作 int空间指向 1的空间
注意:这三个步骤都是在栈空间内完成的!平时为了方便理解的操作经常int i = 1 直接理解为只开辟了一块栈空间
(2)和(3)中 System.out.println(ss.age)打印输出的结果 原理是想类似的 涉及到2个概念,JVM中 创建数组 和 创建实例化对象的过程 。
java中System.out.println()打印输出结果的更多相关文章
- java中system.out.println()是什么意思
在Java编程中,我们常常用System.out.println()方法来输出字符串,也许我们都已经猜到println()是方法名,但System是什么,out又是什么呢?这里就涉及用到一个stati ...
- 在Java中system.out.println使用方法
先输入sysout,然后输入辅助快捷键:Alt+/ 常用快捷键: 1. ctrl+shift+r:打开资源 这可能是所有快捷键组合中最省时间的了.这组快捷键可以打开工作区中任何一个文件,只需要按下文件 ...
- Java的System.out.println()的解析
Java的System.out.println()的解析 System 是java.lang中的一个类. System.out 中的out, 代表了System类中的静态对象PrintStream, ...
- Java中System.setProperty()
Java中System.setProperty()用法 <转抄> // Daysafter :Integer中 getInteger( String s); getInteger( Str ...
- 获得Java中System对应一些属性值
public static void main(String[] args){ System.out.println("Java运行时环境版本:\n"+System.getProp ...
- Java中System的详细用法
System.arraycopy System.arraycopy的函数原型是: public static void arraycopy(Object src, int srcPos, Object ...
- Java 中System里getProperty(something)
Java 中System里getProperty 方法获得系统参数 Key Description of Associated Value 中文描述 java.version Java Runtime ...
- Java中System.getProperty()的参数
Java中System.getProperty的使用方法: 1,System.getProperty返回的数值,比如java.version,java.home,os.name,user.home以及 ...
- python中print()函数的“,”与java中System.out.print()函数中的“+”
python中的print()函数和java中的System.out.print()函数都有着打印字符串的功能. python中: print("hello,world!") 输出 ...
随机推荐
- Linux 配置 history 命令显示操作时间、用户和登录 IP
一.在配置文件中(/etc/bashrc 或者 /etc/profile 或者~/.bash_profile 或者 ~/.bashrc)添加如下配置 #vim /etc/bashrc // 进到 ...
- chmod命令用法详解-chmod修改目录权限
chmod用法: 用来修改某个目录或文件的访问权限. 语法: chmod [-cfvR] [--help] [--version] [who] [+ | - | =] [mode] 文件名 例子: ...
- C++ luogu1352没有上司的舞会 from_树形DP
luogu1352没有上司的舞会 分析(树形DP模板题): 没学树形DP的,看一下. 把该题抽象到一颗树中,设i的下属就是他的儿子,则有两种情况: 如果i参加,他的儿子就不能参加. 如果i不参加,他的 ...
- 事务的隔离级别,mysql默认的隔离级别是什么?
读未提交(Read uncommitted),一个事务可以读取另一个未提交事务的数据,最低级别,任何情况都无法保证. (1)所有事务都可以看到其他未提交事务的执行结果 (2)本隔离级别很少用于实际应用 ...
- Java学习笔记之---类和对象
Java学习笔记之---类和对象 (一)类 类是一个模板,它描述一类对象的行为和状态 例如:动物类是一个类,动物们都有属性:颜色,动物们都有行为:吃饭 public class Dog { Stri ...
- .Net Core Api 授权认证
一.所使用到的NuGet: 1. System.IdentityModel.Tokens.Jwt 2. Microsoft.AspNetCore.Authentication.JwtBearer 二. ...
- 学习4:内容# 1.列表 # 2.元祖 # 3.range
1.列表 列表 -- list -- 容器 有序,可变,支持索引 列表: 存储数据,支持的数据类型很多 字符串,数字,布尔值,列表,集合,元祖,字典, 定义一个列表 lst = ["dsb& ...
- Neo4j配置文件neo4j.conf
机器配置为256G内存,48核(物理核24)cpu,4T SAS盘(建议磁盘使用SSD) 图数据库Neo4j配置文件neo4j.conf 中常用参数: dbms.active_database=gra ...
- Prim算法与Kruskal(没有代码)
两个最小生成树算法, 都有一个共同的思想: 这棵树是一点一点长大的; 并且每次生长, 都是贪心的. 不同之处是: Kruscal算法是以边为中心的, 每次找最小的并且有用的边添加到树上; Prim算法 ...
- Maven(三)使用 IDEA 创建一个 Maven 项目
利用 IDEA 创建一个 Maven 项目 创建 Maven 项目 选择 File --> New --> Project 选中 Maven 填写项目信息 选择工作空间 目录结构 ├─sr ...