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

Java入门第二季 升级版

IMOOC老齐 全栈工程师
难度入门
时长 4小时 0分
  • 类是对象的类型
    查看全部
  • 接口

    1. 接口概念

      接口可以理解为一种特殊的类,由全局常量和公共的抽象方法所组成。

      类是一种具体实现体,而接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部数据,也不关心这些类里方法的实现细节,它只规定这些类的必须提供某些方法。

    2. 接口定义

      和类定义不同,定义接口不再使用class关键字,而是使用interface关键字。

    3. 接口定义的基本语法:

      [修饰符] interface 接口名 [extends 父接口1,父接口2...]

      {

          零个到多个常量定义...

          零个到多个抽象方法的定义...

      }

      接口就是用来被继承、被实现的,修饰符一般建议使用public

      注意:不能使用private 和 protected修饰接口

      常量:

      接口中的属性是常量,即使定义时不添加 public static final修饰符,系统也会自动加上。

      方法:

      接口中的方法只能是抽象方法,总是使用,即使定义时不添加public abstract修饰符,系统也会自动加上。

    4. 使用接口

      一个类可以实现一个或多个接口,实现接口使用implements关键字。Java中一个类只能继承一个父类,是不够灵活的,通过实现多个接口可以做补充。

      继承父类实现接口的语法为:

      [修饰符] class 类名 extends 父类 implements 接口1,接口2...

      {

         类体部分//如果继承了抽象类,需要实现继承的抽象方法;要实现接口中的抽象方法。

      }

      如果要继承父类,继承父类必须实现接口之前。

    5. 使用接口

      接口在使用过程中,还经常与匿名内部类配合使用。

      匿名内部类就是没有名字的内部类,多用于关注实现而不关注实现类的名称

      语法格式:

      Interface i = new Interface(){

        public void method(){

         System.out.println("匿名内部类实现接口的方式");

          }

      }

    查看全部
    0 采集 收起 来源:Java 中的接口

    2019-08-01

  • 当实例化类时,执行顺序:静态初始化块>非静态初始化块>构造方法

    查看全部
  •  静态内部类不能直接访问外部类的非静态成员,但可以通过 new 外部类().成员

     如果外部类的静态成员与内部类的成员名称相同,可通过“类名.静态成员”访问外部类的静态成员;如果外部类的静态成员与内部类的成员名称不相同,则可通过“成员名”直接调用外部类的静态成员


    查看全部

  • 内部类中的方法可以直接访问外部类中的属性 不受访问修饰符的限制  例如可以直接访问外部类的稀有属性。

    如果外部类和内部类具有相同的成员变量或方法,内部类默认访问自己的成员变量或方法,如果要访问外部类的成员变量,可以使用 this 关键字

    查看全部

  • 静态方法无法直接访问非静态方法 所以要先创建静态方法的对象  再用对象去创建非静态方法的对象 再调用非静态方法的方法

    查看全部
  • 成员变量:在类中定义,用来描述对象将要有什么(属性)。可被本类方法和其他跟当前类有关系的方法使用。 局部变量:在类的方法中定义,在方法中临时保存数据。(只能在当前的方法中使用) 区别: 1.作用域不同:局部变量的作用域仅限于定义它的方法,成员变量的作用域在整个类内部都是可见的。 2.初始值不同:java会给成员变量一个初始值,java不会给局部变脸赋予初始值。 3.在同一个方法中,不允许有同名局部变量;在不同的方法中,可以有同名局部变量。 4.两类变量同名时,局部变量具有更高的优先级。

    查看全部
  • 方法:对象执行的操作
    查看全部
  • 万物皆为对象,只要是客观存在的都为对象
    查看全部
  • 抽象类

    1. 语法定义:

      抽象类前使用abstract关键字修饰,则该类为抽象类。

    2. 应用场景:

      a.在某些情况下,某个父类只是知道其子类应该包含怎样的方法,但无法准确知道这些子类如何实现这些方法。(抽象类是约束子类必须有哪些方法,而并不关注子类如何去实现)

      b.从多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为子类模板,从而避免了子类设计的随意性。

    3. 作用:

      限制规定子类必须实现某些方法,但不关注实现细节。

    4. 使用规则

      a.abstract定义抽象类

      b.abstract定义抽象方法,只有声明,不需要实现

      c.包含抽象方法的类是抽象类

      d.抽象类中可以包含普通的方法,也可以没有抽象方法

      e.抽象类不能直接创建,可以定义引用变量

    查看全部
  • 接口中方法不能有方法体,同时方法的访问修饰符不能是private和protected.

    查看全部
    0 采集 收起 来源:练习题

    2019-07-31

  • 1、 静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员。如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问非静态变量。

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

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

    查看全部
  • 使用多态的前提,必须两个类之间有继承关系!

    //抽象类
    public abstract class Person{
      public abstract void say();
    }
    //中国人类
    public class Chinese extends Person{
     public void say(){
      System.out.println("中国人会说汉语");
    }
    }
    //定义一个美国人类
    public class American{
      public void say(){
        System.out.println("美国人会说英语");
    }
    //定义一个测试类
    public class Test{
      public static void main(String[] args){
        Person p1 = new Chinese();
        Person p2 = new American();
        p1.say();
        p2.say();
    }
    }


    查看全部
    0 采集 收起 来源:代码实现

    2019-07-31

  • 封装的实现步骤:

    第一:修改属性的可见性(变量前设为peivate)

    第二:创建getter/setter方法(用于属性的读写)

    第三步:在getter/setter方法中加入属性控制语句

    查看全部
  • 匿名内部类:
    Interface i = new Interface(){
      public void method(){
        System.out.println("匿名内部类实现接口的方式");
    }
    };
    i.method();
    或者 直接 new Interface()
    new Interface(){
      public void method(){
        System.out.println("匿名内部类实现接口的方式2");
    }
    }.method();


    查看全部
    0 采集 收起 来源:Java 中的接口

    2019-07-31

举报

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

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