面向对象第三课,程序执行过程的内存分析,堆、栈分析
2015-02-06 10:19
232 查看
java语言中除基本类型外的变量类型都称之为引用类型
java中的对象是通过引用对其操作的
Student s1 = new Student();
代码执行到这里时,对象里的引用还没有复制,除8种数据基本类型外,所有的数据默认值为String为ull,int为0,boolean为false;
String name = null; //姓名
int id = 0; //学号
int age = 0; //年龄
String gender = null; //性别
int weight = 0;
面向对象中,整个程序的基本单位是类,方法是从属于类的
方法定义格式:
修饰符[public、private] 方法返回值类型[int、String等] 方法名(形参列表){
}
java中方法参数传递是:值传递
变量的作用域
内存分析,栈、堆、方法区
栈:存放局部变量
堆:存放new出来的对象
方法区:存放类的信息(代码),static变量,常量池(字符串常量等)
public class Student{
//静态的数据
String name; //姓名
int id; //学号
int age; //年龄
String gender; //性别
int weight; //体重
//动态的行为
public void study(){
System.out.println(name+"在学习");
}
//形参sname,要在对象实例里传值
public void sayHello(String sname){
int id = 0;;
System.out.println(name+"向"+sname+"说你好");
}
//main方法虽然放到Student类里,可以认为和Student类有关,也可以认为和他没关系,因为系统跑起来会找main方法,Student只是类名而已
public static void main(String[] args){
//类是对象的模板,通过new创建对象的实例
//通过类加载器Class Loader加载Student类,加载后,在方法区中就有了Student类的信息!
Student s1 = new Student();
s1.name="欣欣";
s1.study();
s1.sayHello("亮亮");
}
}
java中的对象是通过引用对其操作的
Student s1 = new Student();
代码执行到这里时,对象里的引用还没有复制,除8种数据基本类型外,所有的数据默认值为String为ull,int为0,boolean为false;
String name = null; //姓名
int id = 0; //学号
int age = 0; //年龄
String gender = null; //性别
int weight = 0;
面向对象中,整个程序的基本单位是类,方法是从属于类的
方法定义格式:
修饰符[public、private] 方法返回值类型[int、String等] 方法名(形参列表){
}
java中方法参数传递是:值传递
变量的作用域
内存分析,栈、堆、方法区
栈:存放局部变量
堆:存放new出来的对象
方法区:存放类的信息(代码),static变量,常量池(字符串常量等)
public class Student{
//静态的数据
String name; //姓名
int id; //学号
int age; //年龄
String gender; //性别
int weight; //体重
//动态的行为
public void study(){
System.out.println(name+"在学习");
}
//形参sname,要在对象实例里传值
public void sayHello(String sname){
int id = 0;;
System.out.println(name+"向"+sname+"说你好");
}
//main方法虽然放到Student类里,可以认为和Student类有关,也可以认为和他没关系,因为系统跑起来会找main方法,Student只是类名而已
public static void main(String[] args){
//类是对象的模板,通过new创建对象的实例
//通过类加载器Class Loader加载Student类,加载后,在方法区中就有了Student类的信息!
Student s1 = new Student();
s1.name="欣欣";
s1.study();
s1.sayHello("亮亮");
}
}
相关文章推荐
- 面向对象分析过程案例实战
- 面向对象程序执行慢的原因
- 面向对象系统分析设计过程-概要设计
- C/C++程序从编译到最终生成可执行文件的过程分析
- QT最简单的程序执行过程分析(内含C++基础知识)
- 程序设计分析(2)——面向对象与面向过程的分析
- java程序在执行过程中,类,对象以及它们成员加载、初始化的顺序如下:
- 面向对象分析过程案例实战
- 面向对象系统分析设计过程-整体思路
- Android系统Recovery工作原理之使用update.zip升级过程分析(八)---升级程序update_binary的执行过程
- 面向对象分析过程案例实战
- Android系统Recovery工作原理之使用update.zip升级过程分析(八)---升级程序update_binary的执行过程
- 在面向过程语言和开发中借鉴面向对象思想提高程序模块化和阅读性
- JAVA程序运行的内存分析JDK7.0堆栈分析局部变量new出来的对象
- 面向对象分析设计过程
- Java程序执行过程分析
- C/C++程序从编译到最终生成可执行文件的过程分析
- 面向对象分析的基本过程
- Android系统Recovery工作原理之使用update.zip升级过程分析(八)---升级程序update_binary的执行过程
- 第一个lucene程序,把一个信息写入到索引库中、根据关键词把对象从索引库中提取出来、lucene读写过程分析