为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
Java入门第二季 升级版_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

Java入门第二季 升级版

IMOOC老齐 全栈工程师
难度入门
时长 4小时 0分
  • 成员变量有初始值

    不会给局部变量初始值

    查看全部
  • 在类的声明中,可以包含多个初始化块,当创建类的实例时,就会依次执行这些代码块。如果使用 static 修饰初始化块,就称为静态初始化块。<br> 需要特别注意:静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。<br> 创建对象的时候就会加载类,就会出现任务结果的前三行。 <br> 程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。

    查看全部
  • 1. 静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员.如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问非静态变量 2.在普通成员方法中,则可以直接访问同类的非静态变量和静态变量 3. 静态方法中可以直接调用静态方法,但不能直接调用非静态方法,需要通过对象来访问非静态方法 4.注意main函数是一个静态函数

    查看全部
  • 静态变量的访问可以不创建对象, 直接用 类名.静态变量 也可以创建对象用 “对象名.静态变量” 访问静态变量。 还可以通过改变 对象名.静态变量 来改变静态变量的值。 问:可以通过 “类名.静态变量” 访问静态变量 如:HelloWorld.className;也可以通过 “对象名.静态变量” 访问静态变量。但是,什么也不加,直接className也可以呀?是因为有什么弊端吗? 答:静态变量是可以直接引用的,不过是不安全的。在访问静态变量的时候首选是类名.静态变量的方式,这不仅是因为它强调了变量的static的结构,而且在某些情况下它还为编译器进行优化提供了更好的机会 你看完下一节内容就明白了,因为我们的main()前也有一个static关键字,这表明mian()是一个静态方法,而静态方法是可以直接访问静态变量的。 你所谓的直接className是在一个类里面才行的通,出了这个类就报错。 1.静态成员变量是属于整个类的全局变量,它不单属于某一个对象;普通成员变量是属于类中的对象,它不能被所有对象共享。 2.静态成员变量必须在全局进行定义,而由于普通成员变量在创建一个对象的时候可以对它进行初始化,因此就不需要单独对它进行定义,只要声明即可。 3.静态成员变量在没有对象之前就存在。 1·、static应用范围:可用于内部类、方法和变量。 2、标记一个方法为static,意味着这个方法,被所在类的所有实例公用,在类装载时被首先执行,执行一次即被所有该类的实例共享,同时意味着: A、static方法内部不能引用非static变量。 B、static方法不能被子类重写为非static方法。 C、父类的非static方法不能被子类重写为static方法。 D、static代码块可以用static {}来完成,在类被第一次装载时执行初始化,先于静态方法和其他方法的执行。 3、标记一个变量为static,则该变量在内存中有不变的位置,相当于全局变量,所有类的实例都访问同一个存储变量区域。对其修改对于所有类的实例来说都是可见和一致的。

    查看全部
  • asdfasdfasdfasdfadsfasdfsdf

    asdf

    asd





    sdf

    asdf

    as

    df

    asf

    a

    sdf

    asd

    fa

    sdf

    as

    dfasdf

    fa

    sdf

    asd

    fas

    df

    asdfasdf

    查看全部
  • 在类的声明中,可以包含多个初始化块,当创建类的实例时,就会依次执行这些代码块。

    静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。

    程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次

    查看全部
  • 注意区分带不带返回值 !!

    查看全部
  • 继承:

        1、继承的初始化顺序

            a、初始化父类再初始化子类

            b、先执行初始化对象中属性,再执行构造方法中的初始化

            c、先执行父类方法中的构造方法,再执行子类中的构造方法

    https://img1.sycdn.imooc.com//5cc6a7be0001907413880972.jpg

    查看全部
  • Java中的ststic使用之静态方法需要注意的是

    (1)静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员。

    (2)普通成员方法中,则可以直接访问同类的非静态变量和静态变量。

    (3)静态方法中不能直接调用非静态方法,需要通过对象来访问静态方法。

    查看全部
  • 方法的重写:

        1、如果子类对继承父类的方法不满意,是可以重写父类继承的方法,调用时会优先调用子类的方法。

        2、语法规则:

            a、返回值类型

            b、方法名

            c、参数类型及个数

            都要与父类继承的方法相同,才叫方法的重写。

    查看全部
  • 静态初始化块和初始化块都是在对象初始化时执行。多次实例化对象,静态初始化块只执行一次,非静态初始化块执行多次。 执行顺序:静态初始化块,初始化块,构造函数
    查看全部
  • Java 中的 static 使用之静态初始化块

    Java 中可以通过初始化块进行数据赋值。如:

    在类的声明中,可以包含多个初始化块,当创建类的实例时,就会依次执行这些代码块。如果使用 static 修饰初始化块,就称为静态初始化块。

    需要特别注意:静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。

    我们来看一段代码:

    运行结果:

    通过输出结果,我们可以看到,程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。


    查看全部
  • 内部类提供了更好的封装

    查看全部
    1. 可以通过代码块对成员变量进行赋值,静态代码块只能对静态变量赋值

    2. 在实例化对象时先执行静态代码块在执行代码块最后执行构造方法

    查看全部

举报

0/150
提交
取消
课程须知
本课程是Java开发的基础,需要大家:掌握 Java 基本语法的使用。如果您是新手,建议先移步 《Java入门第一季》https://www.imooc.com/learn/85
老师告诉你能学到什么?
• 掌握 Java 编程思路 • 熟练运用面向对象程序设计思想
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!