3.28随笔

一、内存分析

栈  用于存放局部变量 局部变量的作用范围最小 如:for循环中的i

堆 用于new对象   随着对象的产生而产生 随着对象的消失而消失

数据区 用于存放静态变量 常量    常驻内存

代码区 用于存放 方法的定义

二、类的常识

1.加public修饰符的类 即公共类可以跨包使用(使用方法同 import lovo.com.cn),但公共类的类名必须与文件名一致

2.不加public修饰符的类 仅限包内使用,优点是隐藏信息,类名可以不与文件名一致

例如atm机里的properties 应定义为private properties a=new properties();因为它只在本类中有用

3.同包的类无需再导入可直接使用,java.lang中的system、string类无需导入可直接使用

4.我们平常用的 public static void main(String[ ] args){}中的(String[] args)意思是有参无返回 参数为字符串类型的数组 args只是一个形参 可以随意命名

比如类是 test  那么就可以运行 java test str1 str2的方式来运行

三、方法的重载

1.定义:在同一个类中,有多个同名的方法,就是方法的重载;

2.重载的方法,区分方式是参数列表不同,与返回值的类型无关;

3.调用方法是,根据实参的值来决定调用哪个重载方法

四、成员变量、静态变量(类变量)、成员方法、静态方法

1.成员变量只能通过对象.(读作的)的方式访问 而静态变量除了通过对象.方式访问 还可以通过类名.的方式访问

2.成员方法与静态方法的访问方式同上;

3.静态方法的加载在对象之前,所以静态方法不能直接访问成员变量和成员方法;

五、properties的使用:

1.导入:import java.util.properties;

(附带导入:import java.io.FileReader;
import java.io.FileWriter;)

2.声明:properties a=new propertie();

3.使用:

(1)用properties对象载入文件读取器:

a.load(new Filereader("user.txt"));

(2)用properties对象获取键对应的值:

a.getproperties("name");

(3)用properties对象设置键对应的新的值:

a.setproperties("name",str1);

(4)用properties对象将新的值存入文件:

a.store(new Filewriter("user.txt"),null);

(5)properties和cn.txt/en.txt联用可以用来做汉化包

补充:引用类 如数组 类 ,如果相互之间赋值,赋值的是内存地址(也就是指向)

要使用一个类  如student类 需要先声明 再初始化(new分配空间)  最后赋值

在初始化之前 student声明的对象是空指向的 即报错的 nullpointer  需要初始化之后 才会指向空间  

此时空间里的成员变量为默认值 比如string类型成员变量 默认值是null (这个null是指无具体值不同于前面的null无指向空间) int类型成员变量默认值是0 已可以进行调用

形参与实参

在有参方法中,形参一定是变量,实参可以是常量也可以是变量

在有参方法运行之前 会先将实参赋值给实参,根据赋值的顺序不同结果会有所不同

形参的名字 只要类型一致 位置一致 形参名可以任意取名

如果赋给的是引用地址 那么相当于将一块空间的使用权交予形参

形参可以使用这块空间 也可以新new一块空间 但也只能拥有一块空间

当一块空间没有被任何引用时 那么就会开启垃圾回收机制

原文地址:https://www.cnblogs.com/zoujuns/p/5330753.html