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

Java入门第二季 升级版

IMOOC老齐 全栈工程师
难度入门
时长 4小时 0分
  • 抽象类 1.抽象类使用abstract关键字修饰 2.应用场景: ①某个父类只是知道其子类应该包含怎么的方法,但无法准确知道这些子类如何实现这些方法 ②从多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为子类的模版,从而避免了子类设计的随意性 3.作用:限制规定子类必须实现某些方法,但不关注实现细节 4.规则:abstract定义抽象方法,只有声明,不需要实现,包含抽象方法的类是抽象类 抽象类中可以包含普通的方法,也可以没有抽象方法。
    查看全部
  • 如果一个类没有明确标识他是继承的某一个类,那么系统默认他是继承的Object类,而Object类有一个方法 toString(); 如果我们输出一个对象 System.out.println(Dog);系统会返回这个对象在内存中的地址,是一组哈希码 就是系统对这个对象使用了toString();方法的结果 ,而我们平时所想要得到得结果往往是希望能打印出对象的属性值,所以我们就要在对象的父类中重写toSting();方法 可以用Eclips自动生成,生成以后,再到去打印输出该类的对象时,就会打印出该对象的属性值了。
    查看全部
  • if(object instanceof class) 当满足下列条件,if语句中的表达式为true: 1.class所表示的类就是object实际所指向的类; 2.class所表示的类是object实际所指向类的父类及其祖先(即父类的父类,父类的父类的父类,。。。)。 注意:这里object实际所指向的类并不一定是object声明时所使用的对象类型。如课程中的代码: Dog dog = new Dog(); Animal animal = dog; animal实际所指向的类已经自动转换为Dog,并不是声明的Animal。
    查看全部
  • Java 中被 static 修饰的成员称为静态成员或类成员。它属于整个类所有,而不是某个对象所有,即被类的所有对象所共享。静态成员可以使用类名直接访问,也可以使用对象名进行访问。当然,鉴于他作用的特殊性更推荐用类名访问~
    查看全部
  • 方法多态 父类创建本类对象时,调用的方法为本类方法 obj1.eat();//Animal的方法 父类创建子类对象时候,调用的方法为子类重写的方法或者父类的方法 obj2.eat();//Dog的方法 obj3.eat();//Cat继承Animal的方法 子类独有的方法没有从父类继承的方法,而此时在main函数当中就不能通过父类的引用来调用此方法。 如:obj2.watchDoor();//不能父类引用调用子类自己的方法
    查看全部
    0 采集 收起 来源:Java 中的多态

    2015-02-02

  • 如果想用super关键字在子类的构造方法中显示的调用父类的构造方法,那么super();必须是该构造方法的第一行。 其实对于无参的构造方法,有一个隐式的super();一直存在,所以我们在实例化一个子类的对象时,程序才会先去执行父类的构造方法。 大前提:子类的构造过程当中,系统必须能调用父类的构造方法。 在这个大前提之下,才会衍生出需要注意的问题,1,如果子类的构造方法中没有显示调用父类的构造方法,则系统默认调用父类无参的构造方法,因为始终有一个看不见的super(); 而这个时候,父类就必须有一个空参的构造方法存在,也就是说,如果我们要写一个父类,而且这个父类会有几种不同的构造方法,那么我们必须也要把空参的构造方法显示的打印出来,如果不打印出来,又定义了有参的构造方法,这个时候系统就会回收那个我们看不见的无参构造方法,而子类的构造方法中又有一个隐形的super(); 即调用父类无参的构造方法,那程序就会报错了。 2,如果我们把super();显示的打印出来也是可以的,但它必须处于构造方法的第一行,当然,并不一定是空参,也可以是有参的,例如 super(int a,int b); 之类的
    查看全部
  • 引用多态:父类引用指向 本类,子类的对象 注意:子类的引用不指向父类对象的。 Animal a1 = new Animal();// 表示父类对象引用指向本类对象 Animal a2 = new Dog(); // 便是父类对象引用你指向子类对象 //Dog dog=new Animal(); //注意:子类的引用不指向父类对象的。
    查看全部
    0 采集 收起 来源:Java 中的多态

    2015-02-02

  • final关键字,使用final关键字做标识,表明是“最终的”含义 final可以修饰类,方法,属性和变量 final修饰类,则该类不允许被继承,也就是最终类的意思。 final修饰方法,则该方法不允许被覆盖(重写),也就是说此方法是最终版本,不可升级或者修改。 final修饰属性,则该类的属性不会进行隐式的初始化且这个属性在初始化时必须显示的为其附上一个初值或者在构 造方法中赋值,二者只能选一个。 final修饰变量,则该变量的值只能赋一次值,如果这个变量是类的某个属性,那么也就是必须满足final修饰属性的规则,在声明时就为其赋上一个值,而由于只能赋一次值,所以这也是最终值得意思,也就是常量。 对于一般的属性或者变量,系统会在初始化时自动帮我们为其赋上一个初值,但是加上final以后,系统就不会帮我们为其赋初值,也就是说,必须由我们自己手动为其赋值。
    查看全部
  • 继承的初始化顺序:先初始化父类再初始化子类,初始化就相当于执行类构造方法。也就是说,如果我们对一个子类进行了对象实例化,那么程序是会先实例化一个父类对象,然后再实例化子类对象。 顺序:父类对象的属性初始化,然后执行父类的构造方法,然后执行子类的属性初始化,最后执行子类的构造方法,建立子类的实例
    查看全部
  • 如果子类对父类的方法进行了覆盖,那么在子类中调用该方法时,会优先调用子类的方法。 方法的返回值,方法名,参数个数都必须和父类的相同,才能达到覆盖父类方法的效果。
    查看全部
  • 封装的范畴包括:给类成员添加访问控制符以及各种内部类,而在内部类环节都不用考虑外部类成员的访问控制符,因为他们其实就是一个类。即使是private,也不会影响内部类对外部类成员的访问。 但是继承就不一样了,继承后也是一个独立的类,所以如果父类的成员是private 那子类是不可以访问的
    查看全部
    0 采集 收起 来源:Java 中的继承

    2015-02-02

  • 方法内部类就是内部类定义在外部类的方法中,方法内部类只在该方法的内部可见,即只在该方法内可以使用。也就是说:定义在方法中的类,其实例化对象也必须在方法中完成,对于这个类所有的操作都必须在方法的范围内完成,外部类通过调用该 方法 来得到这个类的一些计算结果。这是由外向内的访问,而从内向外的访问是可以直接访问的。就算是外部私有的成员,也可以直接访问。 一定要注意哦:由于方法内部类不能在外部类的 方法 以外的地方使用,因此方法内部类不能使用访问控制符和 static 修饰符。
    查看全部
  • 对于静态内部类:静态内部类可以直接访问外部类的静态成员,如果内部和外部的静态成员名称相同,在内部类中可以带上外部类的句柄的方式访问外部的同名静态成员。即“类名.静态成员”。 但是,静态内部类不能直接访问外部类的非静态成员,如果要访问,必须以 new 外部类().成员 的方式进行。 创建静态内部类的对象时,不需要外部类的对象,可以直接创建 内部类 对象名= new 内部类(); 对于外部类的私有成员,内部类也可以访问。
    查看全部
  • equals比较的是内存“地址”是不是一样,返回值是布尔类型的值。 和==的作用是一样的,==只能比较基本类型的值,如果比较两个引用的值,比较的还是内存地址 如果想比较两个对象的值是不是一样的,eclipse可以用source下面的自动生成equals,重写了equals代码。
    查看全部
  • 先执行父类构造方法,再执行子类构造方法 当创建一个子类对象时,初始化顺序是: 父类对象的属性初始化-->构造方法初始化 --->>然后是子类对象的属性初始化-->构造方法初始化
    查看全部

举报

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

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