【167天】黑马程序员27天视频学习笔记【Day06】

【167天】黑马程序员27天视频学习笔记【Day06】

叨逼叨两句

明天就要决断了。

06-(01-06)

Java三大特性

  1. 封装(encapsulation)
  2. 继承(inheritance)
  3. 多态(polymorphism)

学习编程的目的

我突然有启发,我们不就是在对这个线下世界建模么?将线下的世界搬到线上去。或者说是在跟机器沟通,告诉他们线下世界的样子。

注意事项

  1. 建议在一个java文件中写两个类,测试类与基本类,它们的名称要相似,如Demo_Student和Student。

06-07:一个对象的内存图(重要!!!)

  1. 字节码文件从硬盘加载到内存,进的是方法区
  2. 该视频值得再看一遍!!!

167-1

06-08:两个对象的内存图(重要!!!)

  1. main方法一弹栈,其效果就相当于对在其方法内创建的对象赋值null(使这些对象成为了垃圾,被回收)
  2. 该视频值得再看一遍!!!
    167-2

06-09:三个引用两个对象的内存图

  1. 和06-08差不多。

167-3

06-10:成员变量与局部变量的区别

  1. 在类中位置不同:成员变量在类中方法外,局部变量在方法定义中或者方法声明上。
  2. 在内存中位置不同:成员变量在堆内存(成员变量属于对象,对象进堆内存),局部变量在栈内存(局部变量属于方法,方法进栈内存)。
  3. 生命周期不同:成员变量随对象创建而存在,对象消失而消失。局部变量随方法调用而存在,随着方法调用完毕而消失。
  4. 初始化值不同:成员变量有默认初始化值,局部变量没有,必须定义、赋值,然后才能使用(不使用没事)。

167-4

06-11:方法的形式参数是类名时如何调用

  1. 方法的形式参数是引用数据类型时,获取的是地址值。
  2. 方法的形式参数是基本数据类型时,获取的是值。

167-5

06-12:匿名对象的概述和应用(重要!!!)

  1. 定义:匿名对象是没有名字的对象
  2. 应用场景:仅仅调用一次时(注意:若调用多次不合适,匿名对象调用完毕就是垃圾,会被垃圾回收器回收,所以它调用对象给属性赋值不合适)

    class Demo2_Car {
        public static void main(String[] args){
            Car c1 = new Car();        //非匿名调用
            c1.run();
            
            new Car().run();        //匿名调用
        }
    }
    
    class Car {
        String color;
        int num;
        
        public void run(){
            System.out.println("run");
        }
    }

    167-6

  3. 好处:节省代码
  4. 注意事项:匿名对象可以作为实际参数传递。
    167-7
  5. 该视频值得再看一遍。

06-(13-14):封装

  1. 好处

    1. 隐藏实现细节,提供公共的访问方式。
    2. 提高了代码的复用性。
    3. 提高安全性。
  2. 原则

    1. 将不需要对外提供的内容都隐藏起来。
    2. 把属性隐藏,提供公共方法对其访问。

06-(15-16)

  1. JavaBean类就是那种有setXXX、getXXX的方法的类。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值