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

Java入门第二季

IMOOC老齐 全栈工程师
难度入门
时长 4小时 0分
  • 外部类和内部类的相互访问权限:

    1.外部类不能直接访问内部类的成员变量和方法,可以先创建内部类对象,再通过该内部类对象访问内部类的成员变量和方法

    2.内部类可以直接访问外部类的所有成员变量或方法,但当内部类具有和外部类同名的变量或方法时,内部类默认使用自己的成员变量或方法,可以使用如下方法访问外部类成员:

            外部类名.this.外部类成员

    查看全部
  • 内部类的作用:

    1.内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类

    2. 内部类的方法可以直接访问外部类的所有数据,包括私有的数据

    3. 内部类所实现的功能使用外部类同样可以实现,只是有时使用内部类更方便


    内部类分类:

    1.成员内部类

    2.静态内部类:用static声明的内部类,创建对象时不需外部类对象,以如下方式声明:

            内部类 对象名 = new 内部类();

    3.方法内部类:定义在外部类的方法中,只在该方法中可用,因此不能使用访问控制符和static修饰符

    4.匿名内部类



    查看全部
  • 构造方法,普通初始化代码块,普通方法中,都可以直接访问普通变量和静态变量,静态代码块和静态方法中不能直接访问普通成员变量。

    查看全部
  • Java中,可以有很多代码块,就是只用{ } 括起来的代码块,没有其他的修饰符,也不属于方法下面的代码块,我们称之为“初始化块”;

    当创建类的实例时,就会依次执行这些初始化代码块;初始化块主要用来进行数据赋值。

    如果用static修饰的话,就属于静态初始化块。

    静态初始化块只在类加载的时候执行一次。

    静态初始化块只能给静态变量赋值,不能赋值其他。

    注意:记住创建实例后,有初始化代码块一定先执行代码块

    当创建第二个实例对象后,就不会再执行静态代码块了,静态代码块只在类加载时执行且只执行一次。

    优先级:静态初始化代码块 > 初始化代码块 > 构造方法


    查看全部
  • 总结,就是静态的可以直接调用,非静态的需要通过对象来调用。

    查看全部
  • 静态方法放在Date数据区 可以直接调用 和STATIC 变量一样的,在内存开始加载的时候就有空间了 

    而普通方法是 程序运行到的时候才开始调用。

    所以静态的可以直接调用,普通的需要通过对象来调用。

    查看全部
  • 在静态方法中,可以直接访问同类中的静态变量,但是不能直接访问非静态变量。访问非静态变量,可以创建对象,通过对象访问非静态变量。

    静态方法中,也不能直接调用非静态方法,需要通过对象访问

    在普通方法中,可以直接访问同类中的静态变量和非静态变量

    普通方法也可以直接访问静态方法。

    查看全部
  • static修饰的,就是全类可以共同访问的。

    静态变量就是类变量,静态成员就是类成员,静态方法就是类方法,静态代码块就是类代码块。总之static修饰的静态变量等等,就是整个类都可以访问的,可以“静态变量”、可以“类.变量”、也可以“对象.变量”访问,即可以直接访问静态变量、可以通过类名访问,亦可以通过对象访问。

    查看全部
  • 有参构造方法还可以避免给对象的属性赋值不合理的情况:

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

    查看全部
  • 构造方法也可以重载,和普通方法重载相同

    查看全部
  • 有参构造方法:主要可以在创建对象的同时,用来初始化对象的实例变量的值。

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

    在调用有参方法时,直接传入参数的值,则会赋值给实例变量。

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

    查看全部
  • 构造方法主要就是用来创建对象的,可以通过无参构造方法和有参构造方法创建对象。

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

    查看全部
  • Test test = new Test();  这里的Test()就是构造方法;

        构造方法的作用只有一个,就是创建(实例化)对象,构造方法就是为了构造对象的。

        构造方法都是没有返回值的,和类名是相同的;

         构造方法分为有参和无参,如果自己不定义,系统会自动默认定义一个无参构造方法。


    查看全部
  • 在菜单栏里选择·source中generate getters andsetters可以自动生成getter和setter方法

    查看全部
  • 程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。

    查看全部

举报

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

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