16、interface中的成员变量默认为public static final类型,方法只能是public(默认为public)

17、内部类访问外部类成员:

Outer.this.num;

18、一道有趣的题目

  使用内部类实现该程序。(答案附在本文末尾)

interface Inter {
void show();
} class Outer {
/*
*/
} public class Test {
public static void main(String[] args) {
Outer.method().show();
}
}

19、实例化内部类的方式

Outer.Inner inner=new Outer().new Inner();

  静态内部类

Outer.Inner inner=new Outer.Inner();

20、泛型的使用

  类中使用

class Test<T>{}

  方法中使用

public <T,S extends T> void testDemo(T t,S s){}

  这样定义时,要求传入的S必须要是T的子类

  这样写也无妨:

public <T,S extends T> void testDemo(){}

  只是没有卵用,因为在里面定义的T的变量不能初始化。

21、通配符

public void testDemo(List<?> s)

  它等价于

public <T> void testDemo(List<T> s)

  通配符只在修饰变量中用到。

22、异常处理

  throw扔出异常,如果本方法中catch了,就处理,没有就扔到上级方法。

  finally会在返回前,把返回值压栈然后执行,执行完后弹出返回。(延伸链接:https://www.cnblogs.com/justinli/p/4067998.html

23、float z=12.14f; //没有f会被看做是double而报错

24、System.out 是一个PrintStream(你可以通过查看源码来了解它是如何运行的)

25、java标识符:52个字母,数字,下划线,美元符$;不能数字开头,不能是关键字,不能有空格

26、逻辑表达式的返回值

false:1:'a'

  如果两边同类型,则返回该类型。

  如果一边是byte,short,char,另一边是int,且不溢出,则结果为byte,short,char类型。

  不符合上述条件,隐式转换为高精度类型。

27、switch支持的六种类型

byte short char int enum String(java7后)

28、函数调用参数为null时,会调用参数最子类的方法,如果最底层有2个或以上的兄弟类,则会报错。

  参考链接:https://www.cnblogs.com/holybell/p/6568939.html

29、协变

  父类的一个方法返回另一个类的父类;

  子类的这个方法返回另一个类的子类。

  例:

  

class Flower {
Plant kind() {
return new Plant();
}
} class Luoyangred extends Flower {
Peony kind() {
return new Peony();
}
}

30、interface中可定义内部类,默认为public static

附:18的答案

  

interface Inter {
void show();
} class Outer {
public static Inter method(){
return new Inter(){
public void show(){
System.out.println("oo");
}
};
}
} public class Test {
public static void main(String[] args) {
Outer.method().show();
}
}

JAVA复习笔记02的更多相关文章

  1. java复习笔记

    本笔记(无异常处理与网络编程部分)整理自<java程序设计>-黄岚 王岩 王康平 编著 java数据     UI     I/O      java线程      数据库操作 Java数 ...

  2. JAVA复习笔记分布式篇:zookeeper

        前言:终于到分布式篇,前面把JAVA的一些核心知识复习了一遍,也是一个JAVA程序员最基本要掌握的知识点,接下来分布式的知识点算是互联网行业的JAVA程序员必备的技能:     概念:ZooK ...

  3. 【私人向】Java复习笔记

    此笔记学习于慕课网:Java入门第一季-第三季,想学的可以点击链接进行学习,笔记仅为私人收藏 建议学习时间:2-3天(极速版) 数据类型 基本数据类型存的是数据本身 引用类型变量(class.inte ...

  4. Java学习笔记 02 String类、StringBuilder类、字符串格式化和正则表达式

    一.String类一般字符串 声明字符串 >>String str 创建字符串 >>String(char a[])方法用于将一个字符数组创建为String对象 >> ...

  5. 【8-20】java学习笔记02

    others 初始化块在构造器前执行: 静态初始化块和实例变量显示初始化执行顺序为各自定义的位置: final类不能派生子类,final方法不可覆盖,final变量不可重新赋值: 判定值相等,Stri ...

  6. Java复习笔记--java中this 关键字

    Java中this关键字,this可以调用类的成员变量和成员方法,this还可以调用类中的构造方法.使用这种方式值得注意的是, 只可以在无参构造方法中的第一句使用this关键字调用有参构造方法. pu ...

  7. 【Java】Java复习笔记-第四部分

    反射 反射: 在运行时动态分析或使用一个类进行工作. java.lang.Class类:描述类信息的类. 类对象:描述一个类信息的对象,当虚拟机加载类的时候,就会创建这个类的类对象并加载该对象,Cla ...

  8. 【Java】Java复习笔记-三大排序算法,堆栈队列,生成无重复的随机数列

    冒泡排序 package com.lcw.bubble; public class BubbleSort { /** * 冒泡排序 * @param args * @author 成鹏致远 */ pu ...

  9. 【Java】Java复习笔记-第三部分

    修饰符abstract 抽象的,定义框架不去实现,可以修饰类和方法 abstract修饰类: 会使这个类成为一个抽象类,这个类将不能生成对象实例,但可以做为对象变量声明的类型,也就是编译时类型 抽象类 ...

随机推荐

  1. 奥格尔巧妙kfifo

    奥格尔巧妙kfifo Author:Echo Chen(陈斌) Email:chenb19870707@gmail.com Blog:Blog.csdn.net/chen19870707 Date:O ...

  2. 用WPF实现打印及打印预览

    原文:用WPF实现打印及打印预览 应该说,WPF极大地简化了我们的打印输出工作,想过去使用VC++做开发的时候,打印及预览可是一件极麻烦的事情,而现在我不会再使用C++来做Windows的桌面应用了- ...

  3. Spring综合Struts2

    1.1.  Spring综合Struts2 1)        该Spring用户手机WEB-INF下一个 2)        把Spring配置文件配置到web.xml中 <!-- 引入Spr ...

  4. WPF中画虚线

    原文:WPF中画虚线 在WPF中,画线的方法十分简单,只要声明一个Line然后添加到指定的位置就可以了,但Line并不仅仅只能画一条直线,还可以对直线进行修饰. 1.Line.StrokeDashAr ...

  5. HDU-3839-Ancient Messages(DFS)

    Problem Description In order to understand early civilizations, archaeologists often study texts wri ...

  6. 关于SetLength报Out of memory的研究及解决办法

    关于SetLength报Out of memory的研究及解决办法 最近在做一个GIS系统, 在读GIS数据时采用了动态数组,突然读一个数据时SetLength报错!Out of memory 仔细研 ...

  7. ubuntu 16.04 安装 openjdk 1.7

    由于编译Android源码需要openjdk1.7.X版本.ubuntu 16.04自带openjdk为1.8.X版本. sudo apt-get install openjdk-7-jre 或者su ...

  8. WPF 的DynamicResource的NewLine问题

    wpf的TextBlock支持换行,换行可以用 符号来表示. 比如: <TextBlock Text="第1行 第2行"></TextBlock> 显示效果 ...

  9. linq中不能准确按拼音排序

    在LinqToObject中,利用OrderBy/OrderByDescending, ThenBy/ThenByDescending这4个方法排序时,发现不能正确的按拼音排序,所以在排序时增加编码支 ...

  10. 修改Android Studio默认的API Level(SDK版本)

    原文:修改Android Studio默认的API Level(SDK版本) Android Studio(2.1.2)新建工程的时候只会让你选择最低支持的SDK版本,默认的目标编译SDK版本会以系统 ...