Java学习day5

来源:互联网 发布:女性情趣用品淘宝 编辑:程序博客网 时间:2024/06/06 03:10

1.形式参数的问题:

  基本类型:形式参数的改变不影响实际参数

  引用类型:形式参数的改变直接影响实际参数

2.匿名对象:没有名字的对象

(1)应用场景:调用方法,仅仅只调用一次的时候;注意调用多次的时候不适合;

(2)匿名对象调用之后就可以被回收;匿名对象可以作为实际参数被传递

3.构造方法:给对象的数据进行初始化

 格式:方法名与类名相同、没有返回值类型,连void都没有、没有具体的返回值

 注意事项:如果我们没有给出构造方法,系统将自动提供一个无参构造方法;如果我们给出了构造方法,系统将不再提供默认的无参构造方法。(建议自己给无参构造方法)

  构造方法的重载格式:方法名相同,参数列表不同

4.成员方法:

void类型和非void类型、空参方法和非空参方法

5.变量定义为成员变量----如果这个变量是用来描述这个类的信息的,那么,该变量就应该定义为成员变量。变量的范围越小越好,因为能及时被回收。

6.Static关键字:修饰的成员变量被所有对象共享

  Static特点:随着类的加载而加载(回想main方法)、优先于对象存在、被类的所有对象共享、可以通过类名调用(回想main方法,被虚拟机调用)也可以通过对象调用,建议使用类名调用

7.static

注意事项:在静态方法中是没有this关键字的、静态是随着类的加载而加载,this是随着对象的创建而存在,静态比对象先存在、静态方法只能访问静态的成员变量和静态的成员方法。8.public static void main(String[] args)-----String[] args早期是接收键盘录入数据的,现在被Scanner代替了!

9.总结:

(1)成员变量和局部变量的区别--位置不同、内存中位置不同、生命周期不同、初始化值不同

(2)类作为形式参数的问题

(3)匿名对象

(4)封装----隐藏实现细节,提供公共的访问方式、提高代码复用性和安全性(类、方法)

(5)Private也是封装的一种体现

(6)Private的应用:写一个类的时候,把所有的成员变量给private了,提供对应的getXxx()/setXxx()方法

(7)This关键字:代表当前类的引用对象,哪个对象调用方法,该方法内部的this就代表那个对象

(8)This应用场景:解决了局部变量隐藏成员变量的问题

(9)构造方法---作用、格式、注意事项

(10)给成员变量赋值的方式:setXxx()、带参构造方法

(11)Student s=new Student();Jvm做了哪些事情?

    1.Student.class文件加载到内存;2.在堆内存为s开辟空间;3.在堆内存为学生对象申请空间;4.给学生的成员变量进行默认初始化为null5.给学生的成员变量进行显示初始化;6.通过构造方法给成员变量进行初始化;7.对象构造完毕,把地址赋值给s变量

(12)标准案例:学生类、手机类、长方形类、员工类

(13)Static关键字

  1.可以修饰成员变量和成员方法

  2.特点:随着类的加载而加载;优先于对象存在;被类的所有对象共享(这是我们判断该不该使用静态的依据);可以通过类名调用

  3.注意事项:静态方法中没有this对象;静态只能访问静态

  4.静态变量和成员变量的区别:

   a所属不同:静态变量属于类;成员变量属于对象

   B内存位置不同:静态变量--方法区的静态区;成员变量--堆内存

   C生命周期不同:静态变量--随着类的加载而加载,随着类的消失而消失;成员变量--随着对象的创建而存在,随着对象的消失而消失

   D调用不同:静态变量--对象名或者类名调用;成员变量--只能通过类名调用

  5.main方法是静态的

Public权限最大

Static不用创建对象调用

Void返回值给jvm没有意义

Main只是方法名而已

String[] args可以接收数据,通过程序的灵活性

 

原创粉丝点击