△abstract不可以修饰成员变量
△一个类可以没有抽象方法,可以定义为抽象类,这样的目的是不能让其他类建立本类对象,交给子类完成.
△abstract和static(可以被类名调用方法,但是抽象方法调用没有意义)final(不能被覆盖方法)private(私有方法无法覆盖)
△接口只能被实现.被用接口去继承或者用类或者抽象类去实现
△接口中定义的变量全部是常量.关键修饰符为Public static final.接口中没有构造方法,实现接口的类构造方法访问的是object,接口中的方法是Public,因此实现需要注意一定是public
△接口可以没有需要实现的方法.
△接口与类是实现关系,接口与接口之间是继承关系,可以多继承.
△抽象类:被继承体现的是is a关系.定义了共性的功能
 接口是like a关系,定义的是扩展功能
△  javac-d<my_dir> Myprogram.java:就是将Myprogram.java程序里产生的  .class  文件放在 my_dir  目录里,用于生成类文件的包..可以javac -d .Myprogram.java.(当前路径下生成类文件的包)
△import导入*,代表代表通配符,它会在包下挨个匹配,找到后就导入.
访问权限:
            本类              同一包内的子类和无关类     不同包下的子类      不同包下的无关类
private      Y                        N                          N               N
default      Y                        Y                          N               N
protected    Y                        Y                          Y               N
public       Y                        Y                          Y               Y 
△内部类:
      Outer.Inner oi=new Outer().new Inner();
  内部类可以直接访问外部类的私有成员.
静态内部类:
     Outer.Inner oi=new Outer.Inner();
方法中的局部内部类访问局部变量局部变量必须要加final修饰.因为当调用这个方法的时候,局部变量如果没有被final所修饰的话,他的生命周期应当和方法的生命周期是一样的,方法弹栈的时候,局部变量将会消失,这时候如果局部内部类没有被回收走,想要去使用这个方法的时候,就会产生问题.
△匿名内部类只有重写单个方法的时候使用.
△当内部类是成员的时候,要再主函数中访问它,必须要加static
△当重写equals方法时,注意参数是Object,否则就不是重写而是重载了.
△equals与==的区别:equal只能对于引用数据类型进行比较,但是==号能对引用数据类型和基本数据类型都进行比较,equals底层依赖的就是==,一般需要重写equals方法.
△Scanner hasnextInt()判断接下来的数是否是整数,判断后,在调用nextInt():获取输入的整数,.标准格式如下:
 if(i.hasnextInt()) {
     int x=i.nextInt();
}
  当nextInt()和nextLine()作组合的时候,nextInt()在前面的时候,nextInt()获取整数后,不会再获取回车符,因此会被nextLine()所获取而得知该行已结束,因此不会再输出其他内容.
  解决方案1:创建两次Scanner对象2.都用nextLine()方法,随后在转换为整数.

JavaSE 复习_4 接口多态和内部类的更多相关文章

  1. JavaSE复习日记 : 接口

    /* * 接口 * 引用数据类型: * 类,接口,数组; * * 接口是一种引用数据类型,可以看作是一个特殊的类,它存在的目的是为了解决没有多重继承引起的功能弱的问题而设计的,一个类只能有一个父类,但 ...

  2. JavaSE复习(七)Stream流和方法引用

    Stream流 全新的Stream概念,用于解决已有集合类库既有的弊端. 传统集合的多步遍历代码 几乎所有的集合(如 Collection 接口或 Map 接口等)都支持直接或间接的遍历操作.而当我们 ...

  3. JavaSE学习笔记(5)---内部类和String类

    JavaSE学习笔记(5)---内部类和String类 一.内部类基础 转自菜鸟教程 ​ 在 Java 中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类.广泛意义上的内部类一般来 ...

  4. javaSE复习之——线程

    线程其实就是程序执行的一条路径,一个进程中可以包含多条线程,多线程并发执行可以提高程序效率,可以同使完成多项任务 多线程的应用场景 迅雷多线程一起下载 服务器同时处理多个客户请求 多线程原理(单核CP ...

  5. 【java基础】内部类,局部内部类,匿名内部类、静态内部类、接口中的内部类

    内部类: 1.定义在一个类中的内部类,内部类的实例化伴随着外围类所定义的方法来构造,内部类对象有外围类的隐式引用,所以内部类可以直接访问外围类的外围类的域,包括私有的,这是内部类的访问特权,所以比常规 ...

  6. JavaSE 学习笔记03丨继承、接口、多态、内部类

    Chapter. 5 继承 继承作为面向对象的三大特征之一,它是多态的前提.它主要解决的问题是共性抽取. Java中的继承,是单继承.多级继承的. 已存在的类,被称为超类.基类.父类(parent c ...

  7. java学习之接口、多态和内部类

    接口是一组行为的规范.定义.接口是面向对象编程体系中的思想精髓之一,使用接口可以让我们的程序更加利于变化. 接口的格式: interface 接口名称{ 全局变量: 抽象方法: } 接口中的成员修饰符 ...

  8. 黑马程序员——【Java基础】——面向对象(一)概述、类与对象、继承、抽象类、接口、多态、内部类

    ---------- android培训.java培训.期待与您交流! ---------- 一.面向对象概述 1.面向对象:是一个很抽象的概念,它相对面向过程而言,是一种程序设计的思想. 2.面向对 ...

  9. java复习(5)---接口、继承、多态

    Java作为完全面向对象语言,接口.继承和多态是三个非常重要的概念. 1.继承. (1)关键字: extends (2)子类用super()调用父类构造函数,用super().方法 调用父类的成员方法 ...

随机推荐

  1. 在Oracle 中使用CONNECT BY PRIOR START WITH 语句详解

    语法:connect by 是结构化查询中用到的,其基本语法如下: start with,connect by主要目的:从表中取出树状数据.可以假想成表中存成的各条数据是分别是树中的一个结点. sel ...

  2. quick lua 使用spine骨骼动画

    看下下面两个文件 <spine/SkeletonRenderer.h><spine/SkeletonAnimation.h> 1.lua中创建方法: sp.SkeletonAn ...

  3. java文件写入和读出的序列化

    文件的写入入与读出都有它们自己的格式,不便于读入和取出,implement Serializable接口,实现任何个事文件的写入和读取取:

  4. 20151210001 DataGridView 选中与被选中

    // DataSet_IP list        private void DataSet_IP_list()        {            DataSet_IP = new System ...

  5. python-haproxy作业讲解视频总结

    刚看完瞎驴的haproxy配置文件的作业讲解视频: 总结: 1.用户输入的字符串数据类型转换其他数据类型 1.1 eval('用户输入的数据') 1.2 json.loads('用户输入的数据') 2 ...

  6. JAVA基础知识之JVM-——自定义类加载器

    JVM中除了根加载器之外其他加载器都是ClassLoader的子类实例, 可以通过扩展ClassLoader的子类,通过重写方法来实现自定义的类加载器. ClassLoader中有两个关键的方法如下, ...

  7. linux 文件操作命令

    目录操作命令 命令格式 命令 [-选项] [-参数] ls -la /etc 有多个选项时可以合并 ls命令: -a (all) 显示所有文件,包括隐藏文件,那是用.开头的文件 为什么要隐藏(这是个系 ...

  8. ListView Animation

    简单介绍一下4种动画效果方式AnimationSet set = new AnimationSet(false); Animation animation = new AlphaAnimation(0 ...

  9. Nhibernate中CreateSQLQuery用法实例

    说明: 使用原生SQL查询时,若要通过addEntity方法引入对象,则查询结果列中必须包含该对象的所有属性,否则会抛出System.IndexOutOfRangeException异常. 结论: 若 ...

  10. SQL 数据类型,增删改查语句

    数据类型: --类似于C#中的数据类型 Datetime   范围是:1753.1.1-- 9999.12.31 Smalldatetime      1900.1.1 --2079.6.6 操作: ...